【目录】
1,集合输出时,会自动剔除重复元素
>>> sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'}
>>> sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu','Facebook', 'Zhihu', 'Baidu'}
>>> print(sites)
{'Baidu', 'Taobao', 'Google', 'Facebook', 'Runoob', 'Zhihu'}
>>> #集合输出时,会自动剔除重复元素
2,if else print时引号特别重要,否则将会报错 NameError: name ‘nothing’ is not defined
sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'}
if 'aobao' in sites:
print('something')
else:
print('nothing')
#记得这块的' '引号特别重要,
#否则将会报错 NameError: name 'nothing' is not defined
nothing
举个例子:
>>> if 'aobao' in sites:
print('something')
else:
print(nothing)
Traceback (most recent call last):
File "<pyshell#105>", line 4, in <module>
print(nothing)
NameError: name 'nothing' is not defined
3,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
4,set()集合的创建
>>> a = [1,2,3,4,5]
>>> b = [4,5,6,7,8]
>>> a = set(1,2,3,4,5)
>Traceback (most recent call last):
File "<pyshell#115>", line 1, in <module>
a = set(1,2,3,4,5)
TypeError: set expected at most 1 argument, got 5
>> a = set('1,2,3,4,5')
>>> a
{'4', '3', '1', ',', '5', '2'}
>>> a=set('12345')
>>> a
{'4', '3', '1', '5', '2'}
>>> #set()集合不需要加“逗号”作为分隔,否则一直重复的逗号会被视为重复的元素
>>> #另外,更不要将列表和元组与集合混淆,集合是类似于字典的存在。不要用[]方式表现集合,集合的正确表达方式是set(''),然后可以赋值到某元素上去,如X = set('')。
5,集合的运算
print(a - b) # a 和 b 的差集
print(a | b) # a 和 b 的并集
print(a & b) # a 和 b 的交集
print(a ^ b) # a 和 b 中不同时存在的元素
>>> a = set('12345')
>>> b = set('45678')
>>> a
{'4', '3', '1', '5', '2'}
>>> b
{'4', '6', '7', '5', '8'}
>>> print(a-b)
{'1', '3', '2'}
>>> print(a|b)
{'4', '6', '3', '7', '1', '5', '2', '8'}
>>> print(a&b)
{'4', '5'}
>>> print(a^b)
{'1', '8', '6', '3', '2', '7'}