简述python字典映射嵌套排序和判断

电子说

1.3w人已加入

描述

python字典是一种键值映射,而不是序列。

字典是通过键来存储对应值。序列是通过索引位置来存储对应值。

1.2 python字典映射操作

创建空字典:{}

创建有初始值的字典{‘键1’:值1,...,’键n’:值n}

获取键对应的值:字典名[‘键’]

设置键对应的值:字典名[‘键’]=值,存在此键则修改,不存在则新增。

示例

>>> d = {'名字':'梯阅线条','描述':'一个记录和分享软件测试周边的公众号','文章数量':99999}
>>> d
{'名字': '梯阅线条', '描述': '一个记录和分享软件测试周边的公众号', '文章数量': 99999}
>>> d['名字']
'梯阅线条'
>>> d['文章数量'] += 1
>>> d
{'名字': '梯阅线条', '描述': '一个记录和分享软件测试周边的公众号', '文章数量': 100000}
>>> d1 = {}
>>> d1
{}
>>> d1['内容']='python字典'
>>> d1['描述']='python字典映射操作'
>>> d1
{'内容': 'python字典', '描述': 'python字典映射操作'}
>>> print(d1['描述'])
python字典映射操作

1.3 python字典嵌套

python字典的值可以嵌套字典、列表等。

示例

>>> d = {'名字':'梯阅线条',
...      '地址':{'省':'福建','市':'厦门'},
...      '内容':['软件测试','软件开发'],
...      '数量':99999}
>>> d
{'名字': '梯阅线条', '地址': {'省': '福建', '市': '厦门'}, '内容': ['软件测试', '软件开发'], '数量': 99999}
>>> d['地址']
{'省': '福建', '市': '厦门'}
>>> d['地址']['省']
'福建'
>>> d['内容']
['软件测试', '软件开发']
>>> d['内容'][-1]
'软件开发'
>>> d['内容'].append('解决方案')
>>> d
{'名字': '梯阅线条', '地址': {'省': '福建', '市': '厦门'}, '内容': ['软件测试', '软件开发', '解决方案'], '数量': 99999}

1.4 python字典键排序

python3.6及之后版本,字典键的存储(keys()键)顺序与定义时顺序相同。

1.4.1 keys()和sort()

可以通过字典的keys方法获取键组成的列表,再通过列表的sort方法排序,最后用for遍历。

示例

>>> d = {'a':1,'c':3,'b':2}
>>> ks = list(d.keys())
>>> ks
['a', 'c', 'b']
>>> ks.sort()
>>> ks
['a', 'b', 'c']
>>> for k in ks:
...     print(k,'=>',d[k])
...
... 
a => 1
b => 2
c => 3

1.4.2 sorted()

python的sorted()方法可以直接返回升序后的字典键。

>>> d = {'a':1,'c':3,'b':2}
>>> d
{'a': 1, 'c': 3, 'b': 2}
>>> sorted(d)
['a', 'b', 'c']
>>> for k in sorted(d):
...     print(k,'=>',d[k])
...
... 
a => 1
b => 2
c => 3

1.4.3 python字典键判断

访问不在python字典里面的键将会报错。

1.4.3.1 in

python可以通过in表达式判断键是否在字典里面。

示例

>>> d = {'a':1,'c':3,'b':2}
>>> d
{'a': 1, 'c': 3, 'b': 2}
>>> d['d']
Traceback (most recent call last):
 File "

1.4.3.2 get()

用法

get(self, key, default=None, /)

描述

python可以通过字典的get(键,默认值)方法获取键对应的值,如果不存在返回默认值。

使用默认值时,不会新增对应键值。

出参

如果存key,返回对应的值,否则,返回默认值default。

示例

>>> d = {'a':1,'c':3,'b':2}
>>> d
{'a': 1, 'c': 3, 'b': 2}
>>> d.get('a',10)
1
>>> d.get('d',5)
5
>>> d
{'a': 1, 'c': 3, 'b': 2}
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分