在py3.6之后,字典都为有序,如果您使用的python>=3.6,可以无视这篇文章。
有序,是指按照初始添加的顺序进行排序。
有序字典可以通过来实现,声明后,其实例对象的用法与普通字典一样。
from collections import OrderedDict
import jsond = OrderedDict()
d['name'] = 'DaMing'
d['age'] = 20
d['number'] = 100
d['mobil'] = '10233933333'
print(f'init dict: {d}')
d.pop('number')
print(f'after pop dict:{d}')
d.update({'tag': ['student', 'man']})
print(f'after update dict: {d}')
print(f'dumps dict: {json.dumps(d)}')
<OUTPUT>
init dict: OrderedDict([('name', 'DaMing'), ('age', 20), ('number', 100), ('mobil', '10233933333')])
after pop dict:OrderedDict([('name', 'DaMing'), ('age', 20), ('mobil', '10233933333')])
after update dict: OrderedDict([('name', 'DaMing'), ('age', 20), ('mobil', '10233933333'), ('tag', ['student', 'man'])])
dumps dict: {"name": "DaMing", "age": 20, "mobil": "10233933333", "tag": ["student", "man"]}
PS:OrderDict因为内容是一个双向链表,内容是普通字典的两倍多,所以在使用前一定要做好需求分析。