2022//06/19——Python之列表、集合、字典

1、集合

集合可以使用大括号{}或者set()函数进行创建,但是创建一个空集合必须使用set()函数,而不能使用{}。大括号是用来创建一个空字典。

Python语言提供的内置数据结构。其类型分为可变集set与不可变机frozenset两种;

与列表和字典一样,都属于可变序列,集合中的元素不可以重复并且无序,因为对象存在集合内是以哈希对象的形式存储的。

集合是没有value的字典,空集合的表示方法是set(),{}是空字典的表示方式。

集合类型与其他类型最大的区别在于其不包含重复元素,可以使用in/not in判断元素是否在集合内。

#集合创建方式一:
set_1 = {"python","hello",80}
print(set_1)
#输出结果:{80, 'hello', 'python'}

set_2 = {1,1,3,4,4,"python","python"}   #集合中的元素不允许重复
print(set_2)
#输出结果:{1, 3, 4, 'python'}

set_3 = {1,2,2,(1,2,3,4),"python"}
print(set_3)
#输出结果:{1, 2, (1, 2, 3, 4), 'python'}

set_4 = {1,2,2,[1,2,3,4],"python"}
print(set_4)  #代码报错:集合中的元素不允许为可变数据类型(可变序列)
#集合创建方式二:使用内置函数set():将字符串、列表、元组、range()等对象转化成集合
set_4 = set("python")
print(set_4)  #输出:{'y', 'o', 'h', 'n', 't', 'p'}

set_5 = set([1,2,3,4,5])
print(set_5)   #输出:{1, 2, 3, 4, 5}

set_6 = set((1,2,"Hello"))
print(set_6)
set_7 = set(range(5))
print(set_7)
set_8 = set()          #创建空集合
print(set_8)
set_9 = {}
print(type(set_9))     # <class 'dict'> :所以创建空集合的时候,不能直接使用{}

集合的17个内置方法:

set.add(x):集合添加元素

set.clear():清空集合

set.copy():返回集合的浅复制

set.difference(set1[,...]): 返回两个或更多个集合的差(set保持不变)

 
set.difference_update(set1[,...]): 删除set中与set1等集合的重复元素
 
set.discard(x): 删除集合中的指定元素x
 
set.intersection(set1,set2,...,etc): 返回若干集合的交集(set保持不变)
 
set.intersection_update(set1,set2,...,etc): 若干集合的交集存放与set
 
set.isdisjoint(set1): 判断两个集合是否包含相同的元素
 
set.issubset(set1): 判断set是否为set1的子集
 
set.issuperset(set1):  判断set1是否为set的子集
 
set.pop(): 随机移除一个元素
 
set.remove(x): 移除指定元素 
 
set.symmetric_difference(set1): 返回两个集合中不重复的元素集合(set保持不变)
 
set.symmetric_difference_update(set): 移除集合set中在集合set1相同的元素,并将集合set1中不同的元素插入到集合set中
 
set.union(set1,set2,...): 返回若干个集合的并集(set保持不变)
 
set.update(set1): 将在集合set1中且不在set中的元素添加至集合set

 

2、字典

d = {key1;value1,key2:value2,...}

其中键必须用不可变数据类型数字、字符串、元组,值可以使用任何数据类型。

字典通过键来存取元素,因此一个字典中,键必须是唯一的。

字典的创建:dict1 = {} 或 dict1 = dict()

 

字典内置的11个方法:

dict.clear(): 清空字典
 
dict.copy(): 返回字典的浅复制
 
dict.fromkeys(seq[, value]): 创建一个新字典
 
dict.get(key.default = None): 返回指定键的值,如果值不在字典中返回default值
 
dict.items(): 返回可遍历的(键,值)元组数组
 
dict.keys(): 返回一个迭代器,可用list()来转换为列表,列表为字典中所有的键
 
dict.setdefault(key,default = None): 与get()类似,如果键不存在于字典中,将会添加键,并将值设为default
 
dict.update(dict1): 将字典dict1的键-值对更新到dict中
 
dict.values(): 返回一个迭代器,可以用list()来转换为列表,列表为字典中所有的值
 
dict.pop(key[,default]): 删除字典给定key所对应的值,返回值为被删除值。key值必须给出,否则返回default值
dict.popitem(): 随机返回并删除字典中一对键和值(一般删除末尾对)

 

posted on 2022-06-19 22:08  水中雨  阅读(224)  评论(0)    收藏  举报

导航