今天讲了数据类型--集合set()的建立,深度浅度拷贝,集合的差集并集交集,函数的建立,return返回值。

1、四大数据类型的整理--列表,元组,字典,集合

 

 

    这个里面的兜着的篮子要是有序的元组,列表有序

 

 2、列表浅度,深度拷贝

首先是是浅度copy,与简单的copy列表不同的是,列表中还镶嵌了一个列表,所以外面的大列表中记录的是里面列表的一个位置,所以copy的与原来husband是有联系的,相当于改动老婆的,丈夫的钱也会改动。

然后是深度copy的格式

import copy

小三 = copy.deepcopy(huasband)

这样拷贝的话huasband的列表里面的列表就不会随着xiaosan列表里面的改变而改变

 

 

 

 

 自主分析一下原因

a里面的列表的是放的门牌号的房间,现在b也是指向的装有门牌号的房间,我现在修改b,相当于房间里面的门牌号而房间本身的门牌号没有被改变,所以改变b里面的列表,a里面的也会被改变

 

 3、set(),()里面的要是可希哈值(不变的)。这里也可以说不可以放字典,嵌套了列表的列表,这两个都是可变的,但是他自己确实不可哈希的

4、没有索引的数据类型只能用迭代器(字典,集合是无序的)

5、set(‘hanhan’) 

    >>{'h','a','n'}   去重

6、a = set([1,2,3,4,5,6])       b = set([5,6,7,8,9])

交集 print(a.intersection(b))  >>5,6

差集print(a.difference(b))  >>1,2,3,4 

并集print(a.union(b))  >>123456789

对称差集 print(a.symmtric.difference(b))  >>1234789

 

7、判断是否为子集

 

 

8、效果去重

 

9、集合的增加和更新

add与 update区别在于add是一块块加上去的,update拆散了加上去

 

 

 

 

如果是增加的格式带中括号的,就是把他的每一个项分别加进去,不会像上面直接把所有的数全部拆开,去掉中括号是不行的

 

 

10、函数的建立,函数的命名与变量命名相似

  1.减少程序代码

  2.方便修改,更易扩展

  3.保持代码的一致性

def f():

  print('ok')

f()

 

 

11、计算机函数和数学函数的区别

 

 12、定义函数,按顺序对应

 

 13、时间模块

 

 14、函数输入格式,必需参数,关键字参数

 

 15、默认参数,,,,默认参数放在最后面一个,默认参数用在大多数的时候直接设置为默认参数,然后有特殊的直接在相应的位置改正就行了

 

 16、加法器             *args---------无命名参数 ,相当于元组

                      

 

 17、不定长参数       

一个星号元组,两个星号字典,前面的进入元组(无命名参数),后面的进入字典(有命名参数)

def f(*args):
print(args)
f([1,2,3],2)
>>([1,2,3],2)


def f(*args):
print(args)
f(*[1,2,3],2)
>>(1,2,3,2)

 

 

 18、遍历字典

 

 19、

 

 20、顺序 关键参数第一位,默认参数第二位,元组第三,字典第四

 

 21、返回值,

如果没有如return,返回值是None,如果没有return sum  那么a=none

 

 

 

 22、函数有自己的作用域,a在函数里面定义了,在外面不算已经被定义了

 

 23、局部修改count  要加上global全局变量

 

 24、如果在第二层则是nonlocal

 

 

内容有点多,光是为了消化都用了五个小时

 

posted @ 2020-02-07 14:23  凌风之沐  阅读(141)  评论(0)    收藏  举报