集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
集合是没有value的字典
一:创建集合
1:创建一个集合
# 创建集合
set_one = {1, 2, '33', 4, 5}
print(set_one)
输出:
{'33', 1, 2, 4, 5}
2:创建一个空集合
# 创建一个空集合
set_kong = set()
print(set_kong)
print(type(set_kong))
输出:
set()
<class 'set'>
二:集合添加元素
语法:set.add(value)
# 创建一个空集合,用来测试
set_ = set();
# 集合添加一个属性
set_.add('123');
print(set_)
三:集合修改元素
语法:set.update(value)
# 修改集合属性 update
thisset = set(("Google", "Runoob", "Taobao"))
thisset.update({1,3})
print(thisset)
thisset.update([1,4],[5,6])
print(thisset)
输出:
{1, 3, 'Taobao', 'Runoob', 'Google'}
{1, 3, 4, 'Taobao', 5, 6, 'Runoob', 'Google'}
四:移除元素
1:remove
语法:set.remove(value)、
删除不存在的元素会报错。
# 删除集合属性 remove
thisset = set(("Google", "Runoob", "Taobao"))
thisset.remove("Taobao")
print(thisset)
# thisset.remove("Facebook") # 不存在会发生错误
输出:
{'Runoob', 'Google'}
2:discard
语法:set.discard(value)
删除不存在的元素不会报错
# 删除集合属性 discard
thisset = set(("Google", "Runoob", "Taobao"))
thisset.discard("Google")
print(thisset)
thisset.remove("sssss") # 不存在不会发生错误
print(thisset)
输出:
{'Taobao', 'Runoob'}
{'Taobao', 'Runoob'}
3:pop随机删除集合中的一个元素
语法:set.pop(value)
随机删除集合的一个元素,并返回被删除的元素
# 随机删除集合的一个元素,并返回被删除的元素
thissets = set(("111", "222", "333"))
val = thissets.pop()
print(val)
print(thissets)
输出:
222
{'111', '333'}
五:获取集合元素个数
语法:len(set)
# 集合元素个数
sets = set((111,2222,3333,444,555,6666,777,888))
len = len(sets)
print(len)
输出:
8
六:清空集合
语法:set.clear
# 清空集合
setly = set((111,222,333))
print(type(setly))
setly.clear()
print(setly)
输出:
<class 'set'>
set()
七:判断元素是否在集合中存在
语法:val in set
# 判断元素是否在集合中
setin = {111,222,333,444,555}
if 111 in setin:
print('111在集合中')
else:
print('111不在集合中')
输出:
111在集合中
八:集合的内置方法
| 方法 | 描述 |
|---|---|
| add() | 为集合添加元素 |
| clear() | 移除集合中的所有元素 |
| copy() | 拷贝一个集合 |
| difference() | 返回多个集合的差集 |
| difference_update() | 移除集合中的元素,该元素在指定的集合也存在。 |
| discard() | 删除集合中指定的元素 |
| intersection() | 返回集合的交集 |
| intersection_update() | 返回集合的交集。 |
| isdisjoint() | 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。 |
| issubset() | 判断指定集合是否为该方法参数集合的子集。 |
| issuperset() | 判断该方法的参数集合是否为指定集合的子集 |
| pop() | 随机移除元素 |
| remove() | 移除指定元素 |
| symmetric_difference() | 返回两个集合中不重复的元素集合。 |
| symmetric_difference_update() | 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。 |
| union() | 返回两个集合的并集 |
| update() | 给集合添加元素 |
有好的建议,请在下方输入你的评论。