数字 字符串 元组
集合的定义: 1.不同元素组成 2.无序 3.集合中元素必须是不可变类型
不可变:数字 字符串 元组
可变:列表 字典
访问顺序:
直接访问:数字 顺序访问:字符串 列表 元组 映射:字典
存放元素个数:
容器类型:俩表 元组 字典
原子类型:数字 字符串
集合创建方式:
s = {1,2,3,4} set_test=set('hello') {'h','e','l','o'}
内置方法:
s.add('s') #添加元素 s.clear() #清空元素 sl = s.copy() #拷贝 s.pop() #随意删除一个元素 s.remove('x') #删除指定元素x 如不存在 报错 s.dicard('x') #删除指定 如不存在 不报错 p_s l_s #两个集合 print (p_s & l_s) #求出交集 print (p_s.intersection l_s) print (p_s | l_s) #求并集 print (p_s.union l_s) print (p_s-l_s) #求差集 print (p_s .difference l_s) print (p_s ^ l_s) #交叉补集 两者合并出去交集 print (p_s .symetric_difference l_s) print (p_s .isdisjoint l_s) #二者交集为空 返回TRUE print (p_s .issubset(l_s)) #前者是后者的子集 返回TRUE print (p_s .issupset(l_s)) #前者是后者的父集 返回TRUE #以s1 s2代指 s1.add(s2) #更新多个值 也可以插入元组 s = frozenset('hello') #大部分集合是可变类型,这种是不可变集合
百分号字符串连接
msg = 'i am %s my hobby is %s' %('lhf','alex') #%s 可以接受一切 %d 仅仅数字 #%f 默认保留六位 %.2f 保留二位 浮点数 mas = " i am %(name)s age" %{'name':'alex'} #name取K值的value print ('a','x','v','n',sep=':')
常用格式化
mas="i am {} age {} {} ".farmat("alex",12,"hello") mas="i am {2} age {1} {0} ".farmat("alex",12,"hello") #按照索引取值 mas="i am {name} age {age} {name} ".farmat(name= “seven”,age=18) #字典形式取值,如果后面写标准字典形式,前加** mas="i am {:s} age {:d} {:f} ".farmat("alex",12,13.12)
函数
定义方法:
def test(x) #test函数名 x形参
"the function definitions" #文字描述 非必要 但最好有
x+=1 #泛指程序处理逻辑
return x #定义返回值
使用函数的好处:1.代码重用
2.保持一致性 易维护
3.可扩展性
过程: 没有返回值的函数
返回多个值 打印一个元组
若果无返回值 返回None
函数参数:形参和实参 未知参数 默认参数 参数组
1: 只有在调用时才分配内存 调用结束 释放所分配内存
2: 可以是常量 表达式 变量 函数等
3. 位置参数 必须一一对应 缺一不可
test(1,2,3,y=4) #位置参数必须在关键字参数左边
5.
def test (x,*args) #*列表 **字典 print(x) print(args) test (1,2,3,5,6,8) def test(x,*args,**kwargs): print(x) print(args,args[-1]) print(kwargs,kwargs.get('y')) test(1,*[1,2,3],**{"y":1})