1-dict字典
1-dict字典类型
1-简介
【相当于Java和C++里的Map对象】
买没买过菜?
不管买没买我都要给你讲一讲
啊……我们不研究菜值不值,我们今天来研究买菜的价格。【别管合不合理】
黄瓜:¥5元
茄子:¥6元
土豆:¥0.9元
……
那么我们用什么东西去存储量?
列表吗?
不太行,因为需要达到一个效果:
——黄瓜多少元?
【理想回复】——5元!
【实际回复】
代码:
a=["黄瓜:¥5元","茄子:¥6元","土豆:¥0.9元"]
print(a["黄瓜"])
实际:
Traceback (most recent call last):
File "C:\Users\administrator\Desktop\MEME\try.py", line 5, in <module>
a["黄瓜"]
TypeError: list indices must be integers or slices, not str
意思是说,列表必须引用数字去获得确定的值,总之,不能直接输:“黄瓜”。
-------所以很难受。
于是:字典应运而生!!!!!!
举个例子:
a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元"}
print(a["黄瓜"])
结果:
¥5元
这,就是字典。
字典应用键值对,键就像是刚才的蔬菜名称【如“黄瓜”】,值就像是键所对应的价格【如“¥5元”】。调用值时,直接用键调用即可。因为字典是无序的,所以不能向列表那样用数字。
讲一下特点:
【1】字典是有顺序的,哪一个值的位置是固定的!
【2】字典支持修改值,但不支持修改键,支持增加新的值
【3】字典不允许重复的键:{1:1,1:2}是不可以的
【4】字典允许不同类型的变量放一块。
字典的添加不用append,而是直接输入一个空的键,就可创建。
例:
这是刚才的字典:a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元"}
现在又要卖白菜了,就可以这样添加:
a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元"}
a["白菜"]="¥1元"
2-标记
字典用{}标记,a={}表示一个空字典。
键和值之间用冒号【英文:】区分,每对键和值之间用英文逗号隔开。
例:a={"马":"horse","象":"elephant"}
3-注意事项
见上:
【1】字典是有顺序的,哪一个值的位置是固定的!
【2】字典支持修改值,但不支持修改键,支持增加新的值
【3】字典不允许重复的键:{1:1,1:2}是不可以的
【4】字典允许不同类型的变量放一块。
字典的添加不用append,而是直接输入一个空的键,就可创建。
这是重中之重,务必记牢
2-dict()
空字典自然也能用a=dict()来创建。
dict([1,2,3,4])->{1:2,3:4}
明白了吗?
3-函数
1-clear()
清空字典。
4-修改值
1-添加
字典的添加不用append,而是直接输入一个空的键,就可创建。
例:
这是刚才的字典:a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元"}
现在又要卖白菜了,就可以这样添加:
a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元"}
a["白菜"]="¥1元"
2-修改
字典的修改直接输入一个存在的键,就可修改。
例:
这是刚才的字典:a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元","白菜":"¥1元"}
现在白菜要涨价0.5元了,就可以这样添加:
a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元","白菜":"¥1元"}
a["白菜"]="¥1.5元"
3-删除
用del
例:
这是刚才的字典:a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元","白菜":"¥1.5元"}
现在不卖黄瓜了,就可以这样修改:
a={"黄瓜":"¥5元","茄子":"¥6元","土豆":"¥0.9元","白菜":"¥1.5元"}
del a["黄瓜"]
5-遍历
1-遍历值
for ... in dict.values()
2-遍历键
for ... in dict.keys()
--------------------------------------------dict-完----------------------------------------------------------------------------