集合
1,由不同的元素组成(重复的元素只能获取到一个)
2,集合是无序的
3,集合只能由不可变类型组成(数字,字符串,元组)
s = {1,2,3} print(s) #===>{1, 2, 3}
s1 = set("hello") print(s1) #===>{'e', 'l', 'h', 'o'}
s2 = set(["alex","alex","sb"]) print(s2) #===>{'sb', 'alex'}
s1 = {1,4,5,6,"sb"} s1.add("lbs") #只能放一个 print(s1) #===>{1, 4, 'lbs', 5, 6, 'sb'}
s2 = {1,4,5,6,"sb"} s2.update((8,9)) #可以放多个可迭代的,或者集合 print(s2) #===>{1, 4, 5, 6, 8, 9, 'sb'}
s = {1,4,5,6,"sb"} s.pop() # 随机删除 s.remove(4) # 指定删除,若指定的参数,集合里没有,程序会报错 s.discard(5) # 指定删除,若指定的参数,集合里没有,程序不会报错 print(s) #===>{6, 1}
#求交集 s1 = {"lbs", "lss", "lzs"} s2 = {"lbs", "lss", "sb"} print("交集",s1.intersection(s2)) #==>交集 {'lss', 'lbs'} print("交集",s1&s2) #===>交集 {'lss', 'lbs'}
#求并集 s1 = {"lbs", "lss", "lzs"} s2 = {"lbs", "lss", "sb"} print("并集",s1.union(s2)) #===>并集 {'lss', 'lzs', 'sb', 'lbs'} print("并集",s1|s2) #===>并集 {'lss', 'lzs', 'sb', 'lbs'}
#求差集 s1 = {"lbs", "lss", "lzs"} s2 = {"lbs", "lss", "sb"} print("差集",s1.difference(s2)) #===>差集 {'lzs'} print("差集",s1-s2) #===>差集 {'lzs'} print("差集",s2.difference(s1)) #===>差集 {'sb'} print("差集",s2-s1) #===>差集 {'sb'}
#交叉补集 s1 = {"lbs", "lss", "lzs"} s2 = {"lbs", "lss", "sb"} print("交叉补集",s1.symmetric_difference(s2)) #===>交叉补集 {'sb', 'lzs'} print("交叉补集",s1^s2) #===>交叉补集 {'sb', 'lzs'}
s1 = {"lbs", "lss", "lzs"} s2 = {"lbs", "lss", "sb"} print(s1) #===>{'lss', 'lzs', 'lbs'} s1.difference_update(s2) #更新s1集合 print(s1) #===>{'lzs'}
函数
def t(x, *args): print(x) #===> 1 (['a', 3],) print(args) #===> 1 ('a', 3) t(1, ["a", 3]) t(1, *["a", 3])