字典
字典是一种可变容器类型,且可存储任意类型对象,使用的是键值对方式
字典的每个键值key=>value对用冒号:分割,每个键值对之间用逗号(,)分割,整体使用花括号{}
注:dict作为Python的关键字和内置函数,变量名不建议命名为dict
特点
-
字典的键值对,键必须是唯一的,值可以任意
不允许同一个键出现两次。如果创建时同一个键被赋值两次,后一个值会覆盖前面的值,只采取后面的值
tinydict = {'Name': 'Runoob', 'Age': 7, 'Name': '小菜鸟'} print ("tinydict['Name']: ", tinydict['Name']) -
值可以选择任何数据类型,但是键必须是不可变的,如字符串,数字,而用列表就不行
tinydict = {['Name']: 'Runoob', 'Age': 7} print ("tinydict['Name']: ", tinydict['Name'])
创建字典
tinydict1 = { 'abc': 456 }
tinydict2 = { 'abc': 123, 98.6: 37 }
创建空字典
- 使用大括号{}创建空字典
# 使用大括号 {} 来创建空字典
emptyDict = {}
# 打印字典
print(emptyDict)
# 查看字典的数量
print("Length:", len(emptyDict))
# 查看类型
print(type(emptyDict))
- 使用内置函数dict()创建字典:
emptyDict = dict()
# 打印字典
print(emptyDict)
# 查看字典的数量
print("Length:",len(emptyDict))
# 查看类型
print(type(emptyDict))
# 创建有值的字典:dict(键 = 值,...)
empty_dict = dict(a='2', b='3')
print(empty_dict)
访问字典的值
字典[‘键名’]
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
print ("tinydict['Name']: ", tinydict['Name'])
print ("tinydict['Age']: ", tinydict['Age'])
修改字典
通过访问字典中的键,直接赋值修改
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
tinydict['Age'] = 8 # 更新 Age
tinydict['School'] = "菜鸟教程" # 添加信息
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])
删除字典
能删单一的元素,也可以清空字典,清空只需要一项操作,清空字典,字典成为空字典
显示删除一个字典用del命令
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
del tinydict['Name'] # 删除键 'Name'
tinydict.clear() # 清空字典
del tinydict # 删除字典
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])
内置函数
地址:https://www.runoob.com/python3/python3-dictionary.html
- len():计算字典中的个数,即键的总数
- str():输出字典,可以打印的字符串表示
- type(variable):返回输入的变量类型,如果变量是字典就返回字典类型
- dict.clear():删除字典内所有元素
- dict.copy():返回一个字典的浅复制
- dict.fromkeys():创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
- dict.get(key, default=None):返回指定键的值,如果键不在字典中返回 default 设置的默认值
- key in dict:如果键在字典dict里返回true,否则返回false
- dict.items():以列表返回一个视图对象
- dict.setdefault(key, default=None): 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
- dict.update(dict2):把字典dict2的键/值对更新到dict里
- [ dict.values() :返回一个视图对象
- pop(key[,default])]) :删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
- popitem():返回并删除字典中的最后一对键和值。
实践
1、想要将字典的键名用逗号隔开,变成一个字符串
# 装换成list集合
keys = list(table_data.keys())
for i in range(len(keys)):
keys[i] = "`" + str(keys[i]) + "`"
# 使用逗号拼接成一个字符串
key = ','.join(keys)
2、遍历字典
1)、使用字典对象的items()方法可以遍历字典的项,或者是字典的“键值对”
1.1)、遍历项
datas = {"数学": 125, "英语": 86, "物理": 99, "语文": 120}
# 直接访问items项
for item in datas.items():
print(item)
输出结果:
('数学', 125)
('英语', 86)
('物理', 99)
('语文', 120)
1.2)、遍历键值对
# 遍历键值对
for key, value in datas.items():
print(key + " 成绩是: " + str(value))
输出结果:
数学 成绩是: 125
英语 成绩是: 86
物理 成绩是: 99
语文 成绩是: 120
2)、使用字典对象的keys()方法可以获取字典的“键”序列
# 使用字典的keys()方法可以获取字典的键序列
for key in datas.keys():
print(key)
输出结果:
数学
英语
物理
语文
3)、使用字典对象的values()方法可以获取字典的“值”序列
# 使用字典的values()方法可以获取字典的值序列
for value in datas.values():
print(value)
输出结果:
125
86
99
120
本文详细介绍了Python字典的数据结构,包括创建、访问、修改、删除及其内置函数的使用,重点展示了如何转换键名、遍历字典以及常用内置函数的功能。

1390

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



