set

作者: xiangkuuan | 来源:发表于2017-08-29 12:30 被阅读26次

set 在 python 中是一个没有重复元素的无序集合,可以用 set() 函数生成。

 >>>s = set('123242426')
 >>>print(s)
{'3', '2', '4', '6', '1'}

set() 只能接受一个值,而且 set 不能排序

>>> set('appleorange')
{'r', 'e', 'o', 'l', 'a', 'p', 'n', 'g'}
>>> set('apple', 'orange')
TypeError: set expected at most 1 arguments, got 2

当然连个集合之间可以做运算了,运算速度比 list 要好,listset 可以相互转化。

set 转 list
>>> s = set('234251435')
>>> print(s)
{'1', '2', '3', '5', '4'}
>>> l = list(s)
>>> l.sort()
>>> print(l)
['1', '2', '3', '4', '5']

list 转 set
>>> l = ['1', '2', '3', '4', '5']
>>> s = set(l)
>>> print(s)
{'1', '2', '3', '5', '4'}
>>> l = ['234251435']
>>> s = set(l[0])
>>> print(s)
{'1', '2', '3', '5', '4'}

set 的一些运算
有两个 set:x = {1, 2, 3} y = {2, 3, 4}
怎样得到{4}:
y - x就行,也可以用y.difference(x)
要得到{2, 3}可以这样做:
x & y 或者 x.intersection(y)
得到{1, 4}也有两种方法:
x ^ yx.symmetric_difference(y)

相关文章

网友评论

      本文标题:set

      本文链接:https://www.haomeiwen.com/subject/cerodxtx.html