python中字典dic详解-创建,遍历和排序
原文地址:http://www.bugingcode.com/blog/python_dic_create_sort.html
在python的编程中,字典dic是最典型的数据结构,看看如下对字典的操作:
建立字典
直接使用 {} 建立空字典:
book_price = {}
直接初始化的方式建立字典:
book_price = {\'a\':23,\'b\':30}
这是一种key
和value
的键值对,通过keys
和values
可以访问到所有的值:
>>> book_price = {\'a\':23,\'b\':30}
>>> book_price.keys()
[\'a\', \'b\']
>>> book_price.values()
[23, 30]
>>>
遍历字典的几种方式
先获取字典的keys
后得到键值:
for key in book_price.keys():
print "key=%s, value=%s" % (key, book_price[key])
同时获取key和value:
for key, item in book_price.items():
print "key=%s, value=%s" % (key, item)
在获取键值对时,如果本身没有这个key是,可以赋初始值
:
>>> book_price.get(\'c\',21)
21
对字典进行排序
以key
为主,对字典进行排序:
book_price = {\'c\':45,\'b\':30,\'a\':60}
print sorted(book_price.items(), key=lambda d: d[0])
结果为:
[(\'a\', 60), (\'b\', 30), (\'c\', 45)]
对value
进行排序:
book_price = {\'c\':45,\'b\':30,\'a\':60}
print sorted(book_price.items(), key=lambda d: d[1])
结果为:
[(\'b\', 30), (\'c\', 45), (\'a\', 60)]
可以发现我们排序返回来的结果并不是字典了,而是一个数组list
。
转载请标明来之:http://www.bugingcode.com/
更多教程:阿猫学编程
请发表评论