1. 集合
集合使用{}或者set()来创建但是要创建空集合必须使用set()来创建,因为使用{}创建的是一个空的字典
特点:
- 集合是一个无序排列,并且是一个可变数据类型
- 集合可以去重,在集合中没有重复的数据
name = {1,2,3,4,5,6,7}
name1 = set()
print(type(name)) # <class 'set'>
print(type(name1)) # <class 'set'>
name2 = set('abcdefg')
name3 = {1,3,2,4,'abc',3,5}
print(name) # {1, 2, 3, 4, 5, 6, 7}
print(name2) # {'d', 'c', 'g', 'e', 'b', 'f', 'a'}
print(name3) # {1, 2, 'abc', 3, 4, 5}
2 常用操作
2.1 增加函数
2.1.1 add()函数
tip:由于集合不存在重复数据,所以当增加重复数据时,不对集合进行操作
set.add(数据)
date_set = {1,2,3,4,5,6}
date_set.add(3)
date_set.add(23)
print(date_set) # {1, 2, 3, 4, 5, 6, 23} 数据3存在于集合中,所以不对集合进行操作
2.1.2update()函数
update 增加的是一个序列,不能增加单一数据
set.update(序列)
date_set = {1,2,3,4,5,6}
date_set.update([7,8,9])
print(date_set) # {1, 2, 3, 4, 5, 6, 7, 8, 9}
2.2 删除函数
remove()函数
删除指定数据,当数据不存在时则报错
x = set('abcdefg')
x.remove('f')
print(x) # {'e', 'c', 'd', 'b', 'a', 'g'} # 字符f被删除
pop()函数
随机删除一个数据并返回改数据
x = set('abcdefg')
name = x.pop()
print(name) # f 字符f被删除并且返回该字符
print(x) # {'d', 'a', 'b', 'e', 'g', 'c'}
discard()函数
删除指定数据,但是如果数据不存在并不会报错
x = set('abcdefg')
x.discard('f')
print(x) # {'e', 'd', 'c', 'g', 'b', 'a'} 字符f被删除
x.discard('f')
print(x) # {'e', 'd', 'c', 'g', 'b', 'a'} 字符f已被删除但是并不会报错
2.3 查找数据
in/not in
in 存在返回True,不存在返回False
not in 存在返回False,不存在返回True
x = set('123456789')
print('1' in x) # True
print('10' in x) # False
print('1' not in x) # False
print('10' not in x) # True