集合:是把不同的元素组合在一起,是python的基本数据类型
集合对象是一组无序排列可哈希(可哈希:不可变)的值,集合成员可以做字典的键
集合是一个无序的,不重复的数据组合 主要作用如下:
去重,把一个列表变成集合,就自动去重了
关系测试,测试两组数据之前的交集、差集、并集等关系
集合分为可变集合、不可变集合
可变集合:可添加和删除元素,非哈希的(可变的),不能做字典的键,也不能做其他集合的元素
不可变集合:与之相反
创建集合:set(),frozenset()
s=set('hello') s=frozenset('hello')
由于集合本身是无序的,所以不能为集合创建索引和切片操作,只能循环遍历或使用in
,not in
来访问或判断集合元素
集合方法:
add
方法作为一个整体元素进行添加
update
方法会将里面的内容作为一个序列,并将其添加到集合中
函数作用:
减少重复代码
方便修改,更易扩展
保持代码一致性
函数的创建:def(define)
def 函数名(参数列表):
函数体
函数名命名规则和变量命名规则一样
#接收不定长参数 输入多少参数都可以接收到
def f(*args):
print(args)
sum=0
for i in args:
sum+=i
print(sum)
f(1,2,3)
默认参数 当大部分参数内容一样时可以设置为默认参数,对于不同的可以重新赋值
这里默认参数必须放在最后
结论:关于不定长参数的位置:*args放在左边,**kwargs参数放在右边
如果有默认参数放左边
def f(关键字参数,默认参数,*args,*kwargs):
...
def f(name,sex='male',*args,*kwargs):
...
return
没有写就会返回None
.如果return返回对个对象,那么python会将其封装为一个元组并返回
局部要修改全局变量,需要global
进行声明
如果该变量是enclosing
的,在局部下层进行修改需要nonlocal
进行声明