鱼C论坛

 找回密码
 立即注册
查看: 7837|回复: 25

[知识点备忘] 第037讲:字典(中)

[复制链接]
发表于 2021-9-20 23:41:34 | 显示全部楼层 |阅读模式
购买主题 已有 25 人购买  本主题需向作者支付 5 鱼币 才能浏览
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-26 16:57:17 | 显示全部楼层
本节讲解了字典的一些基础知识,包括字典的基本操作、创建字典的六种方式,以及增、删字典内容的相应方法。其中,fromkeys()方法用于创建一个新字典并初始化所有项为相同值,高效快捷,十分常用;pop()方法、popitem()方法、clear()方法和del语句可用于删除字典中的项、清空甚至删除整个字典。此外,我们还了解到了序列与字典的两个重大区别:序列通过位置的偏移存取数据,字典通过键实现写入和读取数据;序列中的元素可以重复,而字典中的每个键都是唯一的。还有一个关于字典的“冷知识”:Python3.7之前的字典内部的存储顺序是无序(没有保障)的,Python3.7之后的字典的存储才是有序的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-22 16:13:47 From FishC Mobile | 显示全部楼层
432C03A4-C14B-41DA-9886-D231B3E0B0E4.jpeg
C812D4BE-83FE-4533-8366-336EEA526A3B.jpeg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-12-7 16:46:03 | 显示全部楼层
  1. >>> x = {"吕布","关羽"}
  2. >>> type(x)
  3. <class 'set'>
  4. >>> y = {"吕布":"小小布","关羽":"小关关"}
  5. >>> type(y)
  6. <class 'dict'>
  7. >>> y = ["吕布"]
  8. >>> y = {"吕布":"小小布","关羽":"小关关"}
  9. >>> y["吕布"]
  10. '小小布'
  11. >>> y["刘备"] = "小备备"
  12. >>> y
  13. {'吕布': '小小布', '关羽': '小关关', '刘备': '小备备'}
  14. >>> a = {"吕布":"小小布","关羽":"小关关","刘备":"小备备"}
  15. >>> b = dic(吕布="小小布",关羽="小关关",刘备="小备备")
  16. Traceback (most recent call last):
  17.   File "<pyshell#10>", line 1, in <module>
  18.     b = dic(吕布="小小布",关羽="小关关",刘备="小备备")
  19. NameError: name 'dic' is not defined
  20. >>> b = dict(吕布="小小布",关羽="小关关",刘备="小备备")
  21. >>> c = dict([("吕布","小小布"),("关羽","小关关"),("刘备","小备备")])
  22. >>> d = dict({"吕布":"小小布","关羽":"小关关","刘备":"小备备"})
  23. >>> e = dict({"吕布":"小小布","关羽":"小关关"},刘备="小备备")
  24. >>> f = dict(zip(["吕布","关羽","刘备"],["小小布","小关关","小备备"]))
  25. >>> a == b == c == d == e == f
  26. True
  27. >>> ["fromkeys(iterable[,values]) 可以使用 iterable 参数指定的可迭代对象来创建一个新的字典,并将所有的值初始化为 values 参数指定的值"]
  28. ['fromkeys(iterable[,values]) 可以使用 iterable 参数指定的可迭代对象来创建一个新的字典,并将所有的值初始化为 values 参数指定的值']
  29. >>> d = dict.fromkeys("Fish",250)
  30. >>> d
  31. {'F': 250, 'i': 250, 's': 250, 'h': 250}
  32. >>> d["F"] = 70
  33. >>> d
  34. {'F': 70, 'i': 250, 's': 250, 'h': 250}
  35. >>> d["C"] = 67
  36. >>> d
  37. {'F': 70, 'i': 250, 's': 250, 'h': 250, 'C': 67}
  38. >>> ["删除字典中指定的元素---pop(key[,default])"]
  39. ['删除字典中指定的元素---pop(key[,default])']
  40. >>> d.pop("s")
  41. 250
  42. >>> d
  43. {'F': 70, 'i': 250, 'h': 250, 'C': 67}
  44. >>> d.pop("狗")
  45. Traceback (most recent call last):
  46.   File "<pyshell#27>", line 1, in <module>
  47.     d.pop("狗")
  48. KeyError: '狗'
  49. >>> d.pop("狗","没有")
  50. '没有'
  51. >>> d.popitem()
  52. ('C', 67)
  53. >>> d
  54. {'F': 70, 'i': 250, 'h': 250}
  55. >>> ["d.popitem(),默认删除字典中最后一组"]
  56. ['d.popitem(),默认删除字典中最后一组']
  57. >>> del d["i"]
  58. >>> d
  59. {'F': 70, 'h': 250}
  60. >>> del d
  61. >>> d
  62. Traceback (most recent call last):
  63.   File "<pyshell#35>", line 1, in <module>
  64.     d
  65. NameError: name 'd' is not defined
  66. >>> d = dict.fromkeys("Fishc",250)
  67. >>> d
  68. {'F': 250, 'i': 250, 's': 250, 'h': 250, 'c': 250}
  69. >>> d.clear()
  70. >>> d
  71. {}
  72. >>> ["d.clear() ,将字典变为一个空字符"]
  73. ['d.clear() ,将字典变为一个空字符']
  74. >>>
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-3 11:37:21 | 显示全部楼层
打卡
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-5-16 10:48:05 | 显示全部楼层
难搞啊学不会记不得啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-21 10:26:00 | 显示全部楼层
小甲鱼老师比很多其他老师讲字典讲得详细一些
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-2 19:57:41 | 显示全部楼层
打卡
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-9-18 09:28:13 | 显示全部楼层
dic = dict([(1, 3), (2, 4), (1, 5)])
print(dic)
>>>>
{1: 5, 2: 4}
字典的键唯一,字典中原来有的键给了一个新值,那么原来对应的值则被修改
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-28 15:39:26 | 显示全部楼层
卡打
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-10-9 15:29:24 | 显示全部楼层
滴滴滴~打卡
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-3 21:17:04 | 显示全部楼层
本帖最后由 lxping 于 2022-11-3 21:18 编辑

使用dict()混合参数创建字典时:
1、只能添加一个列表或字典作为dict()函数参数,否则报错;
2、列表或字典需置于dict()函数的参数第一位,否则报错;
3、添加一个列表或字典作为dict()函数的第一位参数后,随后可以参照第二种方法再添加多个键值对作为参数。
  1. d = dict({"one":1,"two":2},[("three",3),("four",4)])
  2. Traceback (most recent call last):
  3.   File "<pyshell#15>", line 1, in <module>
  4.     d = dict({"one":1,"two":2},[("three",3),("four",4)])
  5. TypeError: dict expected at most 1 argument, got 2
  6. d = dict(one=1,{"two":2,"three":3})
  7. SyntaxError: positional argument follows keyword argument
  8. d = dict({"two":2,"three":3},one=1)
  9. d
  10. {'two': 2, 'three': 3, 'one': 1}
复制代码

点评

我很赞同!: 5.0
我很赞同!: 5
层主这个醒提的很好!  发表于 2023-11-14 09:52
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

发表于 2022-11-5 13:16:20 | 显示全部楼层
Keep learning...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-11 15:14:56 | 显示全部楼层
为什么大家到这里都能发图片了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-3 20:38:16 | 显示全部楼层
搞得好混乱啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-28 17:28:21 | 显示全部楼层
打卡
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-12-30 13:23:55 | 显示全部楼层
本帖最后由 小蜂队 于 2022-12-30 13:26 编辑

具有映射关系的列表组合,在生活中应用广泛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-1-12 15:08:40 | 显示全部楼层
打卡
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-1-31 18:11:47 | 显示全部楼层
打卡
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-15 20:50:26 | 显示全部楼层
打卡~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 20:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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