字典

2022/2/25 Python 基础

  字典是另一种可变容器模型,且可存储任意类型对象。可以采用{}dict来创建,其中每个元素均包含一个键(key)和一个值(value),并以 : 分割。例如:

Dict = {'Name':'Luo', 'Year':2022} 
1

# 键值

  字典的每个值都可以为包括字典在内的其他任一类型的数据。

注意

字典内键是唯一的,不能重复。

# 获取键

Keys = Dict.keys()
print(Keys)
1
2

执行结果:dict_keys(['Name', 'Year'])

# 获取值

Values = Dict.values()
print(Values)
1
2

执行结果:dict_values(['Luo', 2022])

# 访问值

Value = Dict['Name'] # 或 Value = Dict.get('Name')
print(Value)
1
2

执行结果:Luo

# 转化

  返回一个嵌套元组的列表,每个元组的内的子元素为字典的每个元组对应的键和值。

Dict = {'Name':'Luo','Year':2022} 
Items = Dict.items() 
print(Items)
1
2
3

执行结果:dict_items([('Name', 'Luo'), ('Year', 2022)])

# 修改

Dict = {'Name':'Luo','Year':2022} 
1

# 更新

Dict.update({'Month':2}) 
print(Dict)
1
2

执行结果:{'Name':'Luo', 'Year':2022, 'Month':2}

# 剔除

Dict.pop('Year')
print(Dict)
1
2

执行结果:{'Name':'Luo', 'Month':2}

# 替换值

Dict['Month'] = 3
print(Dict)
1
2

执行结果:{'Name':'Luo', 'Month':3}

# 增加

Dict['Love'] = 'Time'
print(Dict)
1
2

执行结果:{'Name':'Luo', 'Moth':3, 'Love':'Time'}

# 组装字典

  利用dictzip实现两个列表快速组合为字典。

NewDict = dict(zip(['Luo','Suppe'],['Name','Pseudonym']))
print(NewDict)
1
2

执行结果:{'Luo':'Name', 'Suppe':'Pseudonym'}

# 解包键值

  将所有的键值返回到一个列表里。

NewDict = {'Luo':'Name', 'Suppe':'Pseudonym'}
KV = list(sum(NewDict.items(), ()))
print(KV)
1
2
3

执行结果:['Luo', 'Name', 'Suppe', 'Pseudonym']

# 字典解析式

  与列表解析式相似,字典解析式是将一个可迭代对象(如列表)转换成字典的工具。示例:

# 将列表元素值与其对应的索引组成字典
List = ['Luo', 'Year', 'Suppe']
NDict = {List[i]:i for i in range(len(List))} 
print(NDict)
1
2
3
4

执行结果:{'Luo':0, 'Year':1, 'Suppe':2}