Python集合操作

网上Python中文教程,比较多人推荐的有菜鸟和廖雪峰网站。关于集合的操作,例子中的集合元素都要自己一个一个敲进去,很不爽,我自己集合随机函数,写一个能不断变换集合元素但是依然能对集合进行常见的并集,交集,差集,包含运算的例子。

代码如下:

import random
dseta=set()
dsetb=set()
for x in range(0,10):
    dseta.add(random.choice(range(0,10)))
    dsetb.add(random.choice(range(0, 10)))
    #print(dseta,dsetb)
print('集合A={0}\n集合B={1}'.format(dseta,dsetb))
print('======下面对集合本身进行操作=======')
print('并集:A∪B={0}'.format(dseta|dsetb))
print('交集:A∩B={0}'.format(dseta&dsetb))
print('差集:A-B={0}'.format(dseta-dsetb))
print('对称差集:A^B={0}'.format(dseta^dsetb))
#下面是集合的元素操作:
print('======下面对集合元素进行操作=======')
print("集合A={0}".format(dseta))
print('集合A中的最大元素={0}'.format(max(dseta)))
print('集合A中的最小元素={0}'.format(min(dseta)))
print('集合A中有{0}个项'.format(len(dseta)))
r=random.choice(range(0,10))
fact=r in dseta
print('包含:{0} 包含在集合A中:{1}'.format(r,fact))
m=max(dseta)
dseta.remove(m)
print('删除集合A中的最大值的项,也就是: {0} 后,A变为:{1}'.format(m,dseta))
#下面测试不可变集合frozenset
print('======除了上面这牛逼的一波操作,还有一个叫做frozenset,相当于tuple之于list,为不可变对象=======')
f=frozenset([x for x in range(1,10)])
print(f)


运行结果:

Python集合操作_第1张图片





你可能感兴趣的:(Python)