集合(set)
集合其实就是一个无序的,自动去重的数据集合,它主要的作用是用来去重和进行关系测试,集合的定义方法如下:
name=set("czp") /name=set({1,2,3,4}) print(type(name)) 运行结果: {'z', 'c', 'p'} /{9, 10, 3, 5} 打印结果可以看到是元素是无序的 <class 'set'> 使用type()方法打印name的类型为set
通过下面这个例子 进一步说明集合是去重的
name=set("czpcc") print(name) 运行结果: {'c', 'p', 'z'}
集合的一些基本方法如下所示:
1.add():添加,仅适用于添加单个元素
s = set([3,5,9,10]) s.add("x") 添加一个元素,注意:add方法只能添加单个元素,添加多个元素需要用update方法 print(s) 运行结果: {3, 5, 9, 10, 'x'}
2.update():更新,适用于添加多个元素
s = set([3,5,9,10]) s.update([1,2]) 通过update方法添加多个元素,可以使用[]列表的形式,也可以使用“”,“”这种,的形式隔开添加 print(s) 运行结果: {1, 2, 3, 5, 9, 10}
3.clear():清空
s = set([3,5,9,10])
s.clear() 移除集合中的所有元素
4.copy() :深浅copy会在后面的博客中详细说。
5.pop():删除(随机删)
s = set([3,5,9,10]) s.pop() pop()方法,随机删除集合中的元素,如果集合为空,程序报错 print(s) 运行结果: {10, 3, 5}
6.remove():删除(指定元素删除)
s = set([3,5,9,10]) s.remove(3) 指定元素删除,如果为空或者该元素不存在,程序报错 print(s) 运行结果: {9, 10, 5}
上面提到了,集合的主要功能是去重和关系测试,对于集合的关系测试使用方法如下所示:
1.交集,可以如下两种方式表示
s = set([3,5,9,10]) v = set([3,4,9,11]) print(s&v) print(s.intersection(v)) 求两个集合的交集 运行结果是一样的: {9, 3} {9, 3}
2.并集,用如下两种方式表示
s = set([3,5,9,10]) v = set([3,4,9,11]) print(s|v) 求两个集合的并集 print(s.union(v)) 运行结果: {3, 4, 5, 9, 10, 11} {3, 4, 5, 9, 10, 11}
3.差集,用如下两种方式表示
s = set([3,5,9,10]) v = set([3,4,9,11]) print(s-v) 求两个集合的差集 print(s.difference(v)) 运行结果如下: {10, 5} {10, 5}
另外还有 issubset()-判断子集、issuperset()-判断父级等方法,返回的值为布尔值。
二:字符串格式化补充
1.打印浮点数
print("小数为 %.2f"%88.87654321) 通过%f来做浮点数的占位符,2代表保留的小位数
运行结果: 小数为 88.88
2.打印百分比
print("percent %.2f %%"%88.87654321) 通过两个%来显示出百分比 运行结果为: percent 88.88 %