51学通信论坛2017新版
标题:
集合的常见操作
[打印本页]
作者:
admin
时间:
2018-8-5 19:40
标题:
集合的常见操作
集合的常见操作:
#!/usr/bin/python3.6
s={1010,"1010",78.9,'abc'}
print(type(s)) #s的数据类型,结果为'set'
print(len(s)) #s的长度,结果为4,表示有4个数据。
print(s) #输出s,但因为set是无序的,所以输出结果和s的初始定义值顺序可能不同。
t={666,888,'abc',99.9,666,555}
print(t) #set的结果会自动去重。参考结果是{666,888,'abc',99.9,555}
'''
集合内的元素没有顺序,不能比较,不能排序,不能切片
所以,s[0]是不合法的。
Set的运算包括:S-T、S&T、S^T、S|T,分别对应数学中的差集、交集、补集、并集。
'''
S={1010,"1010",78.9}
T={1010,"1010",12.3,1010,1010}
print(S-T) #计算差集,结果是{78.9}
print(T-S) #计算差集,结果是{12.3}
print(S&T) #计算交集,结果是{1010,"1010"}
print(S^T) #计算补集,也就是两个Set中的非共同元素。结果是{78.9,12.3}
print(S|T) #计算并集,结果是{1010,"1010",78.9,12.3}
print(S.add('abc')) #集合的添加操作,增加abc这个元素
print(S) #结果是{78.9, 1010, 'abc', '1010'}
print(S.remove(1010)) #集合的删除操作,删除1010这个元素
print(S) #结果是{78.9, 'abc', '1010'}
print('abc' in S) #检查'abc'这个元素是否在集合S中,结果为True
print(1010 not in S) #检查1010这个元素是否不在集合S中,结果为True
print(S.clear()) #将集合S清空
print(S) #输出为set{},set{}表示空集合。
'''
集合类型主要用于元素去重,适合于任何组合数据类型。
'''
S = set('知之为知之不知为不知')
print(S) #结果是:{'之', '为', '知', '不'}
for i in S:
#print()
print(i,end=":") #结果是:不:之:为:知:
复制代码
结果是:
<class 'set'>
4
{'abc', 1010, '1010', 78.9}
{99.9, 555, 'abc', 888, 666}
{78.9}
{12.3}
{1010, '1010'}
{12.3, 78.9}
{1010, '1010', 12.3, 78.9}
None
{'abc', 1010, '1010', 78.9}
None
{'abc', '1010', 78.9}
True
True
None
set()
{'之', '为', '不', '知'}
之:为:不:知:
复制代码
欢迎光临 51学通信论坛2017新版 (http://bbs.51xuetongxin.com/)
Powered by Discuz! X3