……
目录:
一;概念
二;创建字典
三;字典的键
四;字典的基本运算
五;与字典相关的函数
……
一;概念
字典是一个用“键”做索引来存储的数据的集合。一个键和它所对应的数据形成字典中的一个条目。字典和集合一样,也是用{}将元素存储起来。
……
……
二;创建字典
1;创建空字典,a={}或者a=dict()。
2;创建一个普通的字典,a={'李华':99,'小明':78,'小红':89,'李军':60}。【冒号前面的是键,键是独一无二的,冒号后面的是键对应的值,值可以相同可以不同,只要确保键是唯一的就行了。】
3;使用dict()将其它类型转化为字典,比如:
a=dict([('李华',99),('小明',89),('小红',89),('李军',60)])
print(a)
会输出:
{'李华': 99, '小明': 89, '小红': 89, '李军': 60}
还可以写成这样:
a=dict(李华=99,小明=89,小红=89,李军=62)
print(a)
这样输出的值和上面是一样的,也是输出成为字典。
……
……
三;字典的键
只有不可变对象才可以作为字典的键,比如数字、字符串、元祖。
而可变对象不可以作为字典的键,比如列表、字典等。
……
……
四;字典的基本运算
1;字典的访问
可以通过键,访问到相对应的数据。
比如:
a={'李华':99,'小明':78,'小红':89,'李军':60}
print(a['小明'])
会输出:
78
查找小明这个键,就会输出对应的数据——78。
……
2;字典的修改
顾名思义,将键对应的数据进行修改。
比如:
a={'李华':99,'小明':78,'小红':89,'李军':60}
a['小明']=100
print(a)
会输出:
{'李华': 99, '小明': 100, '小红': 89, '李军': 60}
看,小明这个键对应的数据从78变成了100,说明修改成功。
……
3;字典的增添
先看一段代码:
a={'李华':99,'小明':78,'小红':89,'李军':60}
a['小飞']=100
print(a)
这段代码会输出:
{'李华': 99, '小明': 78, '小红': 89, '李军': 60, '小飞': 100}
原本是想要将小飞的分数修改为100的,可仔细一看,原字典中压根就没有小飞这个键,所以会自动增添一个键叫小飞,并且小飞对应的数据是100,这就是字典的增添。
……
4;字典的删除
字典的删除和列表一样,用del就可以了。
不过需要注意的是,列表中的del a[x],x是列表的下标。而字典的del a[y],y是字典的键。
比如:
a={'李华':99,'小明':78,'小红':89,'李军':60}
del a['李华']
print(a)
会输出:
{'小明': 78, '小红': 89, '李军': 60}
成功的删除了李华这个键极其对应的数据。
……
5;字典的遍历
对字典的遍历,其实就是对键的一个遍历。
比如:
a={'李华':99,'小明':78,'小红':89,'李军':60}
for name in a:
print(name+":"+str(a[name]))
会输出:
李华:99
小明:78
小红:89
李军:60
上面的程序中,for name in a,其实就是针对键进行循环,然后再输出键和键对应的数据就可以了。(注意,键对应的值是整数,所以要用str()函数将整数转化为字符串,才能进行字符串的加法操作)
……
6;字典的大小
用len()函数。
……
7;检测某个键是否在字典中存在
用in和not in。
……
8;比较两个字典是否相同
用=和!=进行一个比较。(要键和键值都相同才算是相同的字典)
……
……
五;与字典相关的函数
1;items()函数
items()函数可以将字典转变成包裹着元祖的列表。
比如用这个items()函数对字典进行遍历。
如下:
a={'李华':99,'小明':78,'小红':89,'李军':60}
for key,value in a.items():
print(key+':'+str(value))
print(a.items())
会输出:
李华:99
小明:78
小红:89
李军:60
dict_items([('李华', 99), ('小明', 78), ('小红', 89), ('李军', 60)])
可以看到,a.items()其实是把a这个字典变成了一个包裹着元祖的列表。
总之,字典还是很好用的。