九
今天讲了数据类型--集合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

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

浙公网安备 33010602011771号