欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

11.字典:当索引不好用时

发布时间:2025/3/21 编程问答 35 豆豆
生活随笔 收集整理的这篇文章主要介绍了 11.字典:当索引不好用时 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

字典:key–value

字典不是序列类型,它是映射类型 (1)创建字典 ① >>> dict = {} #空字典 >>> dict {} ②直接按照字典的格式定义 >>> dict1 = {'Adidas':'impossible is nothing','Nike':'just do it'} >>> dict1 >{'Adidas': 'impossible is nothing', 'Nike': 'just do it'} ③用赋值:key=value,再dict() >>> dict2=dict(Nick='just do it',Adidas='nothing is impossible') >>> dict2 {'Nick': 'just do it', 'Adidas': 'nothing is impossible'} ④用map构成的元组,再dict() >>> d3 = dict((('f',1),('A',2))) #用map构成的元祖,再dict() >>> d3 {'A': 2, 'f': 1}书写格式: - 大括弧{} - key与value之间用冒号分开: - 键值对之间用逗号,分开(2)访问字典 >>> dict['Nike'] #通过key,获得value 'just do it'

fromkeys()函数:快速创建/修改字典

>>> dict1 = {}.fromkeys((1,2,3)) >>> dict1 {1: None, 2: None, 3: None}>>> dict2 = {}.fromkeys((1,2,3),'number') >>> dict2 {1: 'number', 2: 'number', 3: 'number'}>>> dict3 = {}.fromkeys((1,2,3),('one','two','three')) >>> dict3 {1: ('one', 'two', 'three'), 2: ('one', 'two', 'three'), 3: ('one', 'two', 'three')}>>> dict4 = {}.fromkeys((1,2,3),'one','two','three') #报错

keys()
values()
items()
in或not in
get()

>>> Dict = {}.fromkeys(range(10),'YY') >>> Dict {0: 'YY', 1: 'YY', 2: 'YY', 3: 'YY', 4: 'YY', 5: 'YY', 6: 'YY', 7: 'YY', 8: 'YY', 9: 'YY'} >>> Dict.keys() [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> Dict.values() ['YY', 'YY', 'YY', 'YY', 'YY', 'YY', 'YY', 'YY', 'YY', 'YY']>>> #打印出字典的所有的key >>> for ch in Dict.keys():print ch0 1 2 3 4 5 6 7 8 9 >>> >>> #打印所有的key-value对 >>> for item in Dict.items():print item(0, 'YY') (1, 'YY') (2, 'YY') (3, 'YY') (4, 'YY') (5, 'YY') (6, 'YY') (7, 'YY') (8, 'YY') (9, 'YY')innot in 判断key是否在字典Dict中 >>> 1 in Dict True >>> 11in Dict False >>> get()函数,获得字典中制定key的value >>> print(Dict.get(11)) None >>> print(Dict.get(1)) YY

clear()函数

清空字典a,可以用下面两种方法: a = {} a.clear() #一般我们选择此方法因为:a = {}只是消除了a字典,并没有清除a的赋值, 而a.clear()全部都消除了,更加安全。 >>> a = {1:'one',2:'two'} >>> b = a >>> a = {} >>> a {} >>> b #只清楚了a,但是b没有清除 {1: 'one', 2: 'two'}>>> a = {1:'one',2:'two'} >>> b = a >>> a.clear() >>> a {} >>> b #全部清除 {}

copy():浅拷贝、赋值=

>>> a = {1:'one',2:'two',3:'three'} >>> b = a #赋值 >>> c = a.copy() #浅拷贝>>> b #赋值和浅拷贝后,b、c都等于a {1: 'one', 2: 'two', 3: 'three'} >>> c {1: 'one', 2: 'two', 3: 'three'}>>> id(a) 42481592L >>> id(b) 42481592L >>> id(c) 38755320L 【重点注意】 赋值:a与b指向相同的内容(id相同),只是名字不同而已, 如果a改变,则b改变;同理,b改变,a也改变 浅拷贝:c与a的id都不同,内容相互不影响 >>> b[4] = 'four' #往b中加入(4,'four') >>> b {1: 'one', 2: 'two', 3: 'three', 4: 'four'} >>> a #那么,a也随之改变 {1: 'one', 2: 'two', 3: 'three', 4: 'four'} >>> c #但是c不改变 {1: 'one', 2: 'two', 3: 'three'} >>>

pop(): 给定一个key,弹出对应的value,并删除该key-value对

>>> a.pop(2) #给定一个key,弹出对应的value 'two'

popitem():随机在字典中弹出key-value对

setfault():

>>> c {1: 'one', 2: 'two', 3: 'three'} >>> c.setdefault(1) #如果存在key=1,就显示对应的value 'one'>>> c.setdefault('kobe','laker') #如果没有key,就添加key-value对到字典c 'laker' >>> c {1: 'one', 2: 'two', 3: 'three', 'kobe': 'laker'}

总结

以上是生活随笔为你收集整理的11.字典:当索引不好用时的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。