一、字典
1.1:字典的格式
格式:变量名={key1:value,key2:value,,,}
字典的每个元素由2部分组成,键(key):值(value)
案例:
info = {"name":"jack","age":12,"sex":"男"}
1.2:根据键访问值
案例:有对应key的
info = {"name":"jack","age":12,"sex":"男"}
print(info["name"])
#结果:jack
案例:无对应key的
info = {"name":"jack","age":12,"sex":"男"}
print(info["name12"])
#结果:KeyError: 'name12'
思考:假如我们不确定字典中是否存在某个键,而又想获取其值时,如何操作?
案例:有对应key的
info = {"name":"jack","age":12,"sex":"男"}
print(info.get("name"))
#结果:jack
案例:无对应key的
info = {"name":"jack","age":12,"sex":"男"}
print(info.get("name"))
#结果:None
案例:无对应key的,默认返回数据
info = {"name":"jack","age":12,"sex":"男"}
print(info.get("name12","无数据"))
#结果:无数据
1.3:修改元素
字典的每个元素中的数据是可以修改的,只要通过key找到,即可修改,否则是新增
案例:对应的key
info = {"name":"jack","age":12,"sex":"男"}
info["age"] =14
print(info)
#结果:{'name': 'jack', 'age': 14, 'sex': '男'}
案例:无对应的key
info = {"name":"jack","age":12,"sex":"男"}
info["gender"] ="属鸡"
print(info)
#结果:{'name': 'jack', 'age': 12, 'sex': '男', 'gender': '属鸡'}
总结: 有对应的key则是修改数据,没有对应的key是新增数据
1.4:添加元素
案例:
info = {"name":"jack","age":12,"sex":"男"}
info["gender"] ="属鸡"
print(info)
#结果:{'name': 'jack', 'age': 12, 'sex': '男', 'gender': '属鸡'}
1.5:删除元素
del:删除指定元素
clear():清空
1.5.1:del(删除指定元素)
案例:删除整个字典
info = {"name":"jack","age":12,"sex":"男"}
del info
print(info)
#结果:NameError: name 'info' is not defined
案例:删除某个元素
info = {"name":"jack","age":12,"sex":"男"}
del info["name"]
print(info)
#结果:{'age': 12, 'sex': '男'}
1.5.2:clear(清空)
案例:
info = {"name":"jack","age":12,"sex":"男"}
info.clear()
print(info)
#结果:{}
1.6:查询长度
len():查询键值对的个数
案例:
info = {"name":"jack","age":12,"sex":"男"}
print(len(info))
#结果:3
1.7:字典中循环
案例:取出字典中的key
info = {"name":"jack","age":12,"sex":"男"}
for i in info.keys():
print(i)
#结果:name age sex
案例:取出字典中的value
info = {"name":"jack","age":12,"sex":"男"}
for i in info.values():
print(i)
#结果:jack 12 男
案例:取出字典中的key和value
方式一:
info = {"name":"jack","age":12,"sex":"男"}
for i in info.keys():
print(i,info[i])
方式二:
info = {"name":"jack","age":12,"sex":"男"}
for k,v in info.items():
print(k,v)
扩充:如何实现带下标索引的遍历
for i in 可迭代:
print(i)
enumerate():实现索引的遍历
names=["jack","tom","Meachal"]
for i,chr in enumerate(names):
print(i,chr)
返回值:
0 jack
1 tom
2 Meachal