鱼C论坛

 找回密码
 立即注册
查看: 2062|回复: 0

[技术交流] 《零基础入门学习Python》25-26 字典

[复制链接]
发表于 2017-8-21 01:32:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Gabber 于 2017-8-21 01:37 编辑

字典

0. 字典是Python唯一的映射类型, 映射,两个元素集之间元素的相互对应关系

1. 创建和访问字典,标志 : { }
字典不是序列类型,是映射类型。
字典由多个键和其对应的值组成。
1) dict={key1:value1,key2:value2}
2)索引字典里的值:dict1['key']
3)用关键字创建字典
  1. >>> dict1 = {'李宁':'一切皆有可能','耐克':'Just do it','阿迪达斯':'impossible is nothing','鱼C工作室':'让编程改变世界'}
  2. >>> print('鱼C工作室的口号是:',dict1['鱼C工作室'])   # 字典是用关键字去索引
  3. 鱼C工作室的口号是: 让编程改变世界
复制代码
  1. >>> dict2 = {1:'one',2:'two',3:'three'}
  2. >>> dict2
  3. {1: 'one', 2: 'two', 3: 'three'}
  4. >>> dict2[2]
  5. 'two'
复制代码

4)创建空字典: dict3 = {}
5)用元组/列表创建字典
  1. >>> dict3 = dict((('F',70),('i',105),('s',115),('h',104),('C',67)))  #只有一个参数,可用元组、列表,构成一组映射关系即可
  2. >>> dict3
  3. {'F': 70, 'i': 105, 's': 115, 'h': 104, 'C': 67}
复制代码
  1. >>> dict4 = dict(小甲鱼='让编程改变世界',苍井空='让AV征服所有宅男')
  2. >>> dict4
  3. {'小甲鱼': '让编程改变世界', '苍井空': '让AV征服所有宅男'}
复制代码

6)直接给字典的键赋值,若键在字典中存在,将改写键对应的值,如不存在,将创建一个新的键并为其赋值
  1. >>> dict4['苍井空'] = '所有AV从业者都要通过学些编程来提高职业技能'
  2. >>> dict4
  3. {'小甲鱼': '让编程改变世界', '苍井空': '所有AV从业者都要通过学些编程来提高职业技能'}
  4. >>> dict4['爱迪生'] = '天才就是99%的汗水+1%的灵感,但这1%的灵感远远比99%的汗水更重要'
  5. >>> dict4
  6. {'小甲鱼': '让编程改变世界', '苍井空': '所有AV从业者都要通过学些编程来提高职业技能', '爱迪生': '天才就是99%的汗水+1%的灵感,但这1%的灵感远远比99%的汗水更重要'}
  7. >>>
复制代码


2. 字典的内置方法
1)fromkeys(...),创建并返回新的字典
dict.fromkeys(S[,v]),S是键值,v是键对应的值(可选),默认为none
2)访问字典的方法:
keys()        返回字典所有的键
values()        返回字典中的所有值
items()        返回可遍历的(键, 值) 元组数组
get()                返回指定键的值,如果值不在字典中返回默认值(none)。dict.get(key, default=None)
clear()        清空字典
pop(key[,default])        删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
popitem()                随机返回并删除字典中的一对键和值。
update()                把字典dict2的键/值对更新到dict里  dict.update(dict2)
copy()                返回一个字典的浅复制
  1. >>> dict1 = dict1.fromkeys(range(10),'赞')
  2. >>> dict1
  3. {0: '赞', 1: '赞', 2: '赞', 3: '赞', 4: '赞', 5: '赞', 6: '赞', 7: '赞', 8: '赞', 9: '赞'}
  4. >>> for eachkey in dict1.keys():  #返回键
  5.         print(eachkey,end=' ')       
  6. 0 1 2 3 4 5 6 7 8 9
  7. >>> for eachvalue in dict1.values():  #返回键的对应值
  8.         print(eachvalue,end=' ')
  9. 赞 赞 赞 赞 赞 赞 赞 赞 赞 赞
  10. >>> for eachItem in dict1.items():  #返回项
  11.         print(eachItem,end=' ')
  12. (0, '赞') (1, '赞') (2, '赞') (3, '赞') (4, '赞') (5, '赞') (6, '赞') (7, '赞') (8, '赞') (9, '赞')
  13. >>> dict1.get(10,'木有')   #get()方法
  14. '木有'
  15. >>> dict1.get(9,'木有')
  16. '赞'
  17. >>> dict1.clear()  #清空
  18. >>> dict1
  19. {}
  20. >>> a.pop(2)         #pop()
  21. 'two'
  22. >>> a
  23. {1: 'one', 3: 'three', 4: 'four'}
  24. >>>
  25. >>> a.popitem()   #popitem()
  26. (4, 'four')
  27. >>> b = {1:'sun',5:'five'}
  28. >>> a.update(b)   #update()
  29. >>> a
  30. {1: 'sun', 3: 'three', 5: 'five'}
  31. >>> c = a.copy()   #copy()
  32. >>> c
  33. {1: 'sun', 3: 'three', 5: 'five'}
复制代码

评分

参与人数 1鱼币 +5 收起 理由
小甲鱼 + 5

查看全部评分

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-2 14:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表