一、字典
字典:字典里面的数据是以键对值形式出现,字典数据和数据顺序没有关系,既字典不支持下标,后期,无论数据如何变化,只需要按照对应的键(key)的名字查找数据即可
""" 字典名 = {'key1':数据1,'key2': 数据2 } """
空字典的创建,dict() 是一个函数
dict1 = {}
dict2 = dict()
注意:字典是可变类型
1、增
写法:字典序列[ key ] = 值
注意:如果key存在则 修改 这个可以对应的值,如果key不存在,则 新增 此键值对。
2、删
del( ) / del :删除字典或删除字典中指定的键值对
del 字典序列['key'] # 删除字典中键(key)为key的键值对
del(字典序列) # 删除字典序列
clear():清空字典
""" 字典序列.clear() """
3、改
与新增语法一样
""" 字典序列[key] = 值 """
4、查
key值查找
""" 字典序列[key] """
print(字典序列[key]) # 将查找的结果直接输出
注意:当查找的key存在时,则返回值,不存在时,则报错,可将结果赋值或直接输出
函数查找
gets()
""" 字典序列.get(key, 默认值) """
注意:如果当前查找的key不存在,则返回第二个参数(默认值),如果省略第二个参数,则返回None
keys(): 查找字典中所有的key,返回不可迭代对象
""" 字典序列.keys() """
valuse():查找字典中所有的值,返回可迭代对象
""" 字典序列.values() """
items():查找字典中所有的键值对,返回可迭代对象,里面的数据是元组,元组数据1是字典的key,元组数据2是字典对应的值
""" 字典序列.items() """
5、遍历
遍历字典的key :通过获得字典中的所有key,然后通过for循环,将字典遍历
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for key in dict1.keys():
print(key)
遍历字典的value : 通过返回字典中所有的值,然后通过for循环,将字典遍历
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for values in dict1.values():
print(values)
遍历字典的元素 : 通过items() 函数,查找所有键值对,返回可迭代对象,这个可迭代对象是一个字典的单个键值对,以元组形式存在
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for item in dict1.items():
print(item)
遍历字典的键值对: 通过遍历字典,将每一个键值对拆包,
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for key, value in dict1.items():
print(f'{key} = {value}')
注意:这里,通过函数items() 将字典拆分位一个个元组,然后,将前面两个变量依次赋值接收,然后通过输出函数,打印出来,这个过程称为拆包
二、集合
创建集合用{ }或者set(),但是如果要创建空集合,只能使用set(),因为{ }用来创建空字典
""" 集合名称 = {数据1, 数据2, 数据3} """
""" 集合名称 = set(数据1, 数据2, 数据3) """
集合的特点:1、去重,如果需要存储没有重复的大量数据,则可用集合存储
2、集合没有顺序,新增数据位置是随机的,因此,不能使用下标查找数据
3、集合是可变类型
1、增加数据
add():可在集合中增加数据,若原有集合已经存在,则不增加数据
""" 集合名称.add(数据) """
update():函数追加的是一个数据序列,如果追加单一数据,则报错
""" 集合名称.update(列表序列) """
2、删除数据
remove():删除集合中的指定数据,如果数据不存在,则报错
""" 集合名称.remove(数据) """
discard():删除结合中的指定数据,如果数据不存在,也不会报错
""" 集合名称.discard(数据) """
pop():随机删除集合中的某个数据,并返回这个数据
""" 集合名称.pop(数据) """
3、查找数据
in():判断数据是否存在在集合中,返回结果为布尔数据类型
print(数据1 in 集合) # 如果存在,返回True,如果不存在 ,返回False
not in():判断数据是否不存在在集合中,返回结果为布尔数据类型
print(数据1 not in 集合) # 如果存在,返回False,如果不存在 ,返回True
140

被折叠的 条评论
为什么被折叠?



