Python -- set,,Python执行某一


Python执行某一类的时候,相当于执行__init__ 方法例如:list() list __init__

set 是一个无序且不重复的元素集合,可看做数学中的集合

用法:1.创建集合 s = set() 创建空集合s = set([11,22,33]) s = set(‘asdfghh‘) s = {‘asd‘,‘saf‘}2.访问集合a in s3.更新集合 s.add()---添加,每次只能添加一个元素 s.clear() ----清空 s.upadte()---更新集合,并赋值给s。可以迭代批量添加,相当于执行for循环然后重复执行.add方法。 s.discard()---删除指定元素,不存在不报错 s.remove()---删除指定元素,不存在则报错 s.pop() -----随机删除元素

4、联合(|)

联合(union)操作与集合的OR操作其实等价的,联合符号有个等价的方法,union()。

>>> s1=set(‘begin‘)>>> s2=set(‘man‘)>>> s3=s1|s2>>> s3set([‘a‘, ‘b‘, ‘e‘, ‘g‘, ‘i‘, ‘m‘, ‘n‘])

5、交集(&)

与集合AND等价,交集符号的等价方法是intersection()

>>> s1&s2set([‘n‘])>>> s1.intersection(s2)set([‘n‘])

6、查补(-)
等价方法是difference()

>>> s1-s2  # s1 - (s1 & s2)set([‘i‘, ‘b‘, ‘e‘, ‘g‘])>>> s1.difference(s2)set([‘i‘, ‘b‘, ‘e‘, ‘g‘])

7、对称差分(^)

对称差分是集合的XOR(‘异或’),取得的元素属于s1,s2但不同时属于s1和s2.其等价方法symmetric_difference()

>>> s1^s2   #(s1 U s2)-(s1  & s2)set([‘a‘, ‘b‘, ‘e‘, ‘g‘, ‘i‘, ‘m‘])>>> s1.symmetric_difference(s2)set([‘a‘, ‘b‘, ‘e‘, ‘g‘, ‘i‘, ‘m‘])

注意:集合之间and,or

>>> s1 and s2  等价于s2set([‘a‘, ‘m‘, ‘n‘])   #取 s2>>> s1 or s2   等价于s1set([‘i‘, ‘b‘, ‘e‘, ‘g‘, ‘n‘]) #取 s1>>>

五、集合、列表、元组、字符串之间转换

>>> list(s1)[‘i‘, ‘b‘, ‘e‘, ‘g‘, ‘n‘]>>> str(s1)"set([‘i‘, ‘b‘, ‘e‘, ‘g‘, ‘n‘])">>> tuple(s1)(‘i‘, ‘b‘, ‘e‘, ‘g‘, ‘n‘)


***********************************************引用地址忘记了,抱歉**************************************************

Python -- set

相关内容

    暂无相关文章

评论关闭