鱼C论坛

 找回密码
 立即注册
查看: 1437|回复: 4

[已解决]视频中关于字典的疑惑

[复制链接]
发表于 2021-10-5 14:32:39 | 显示全部楼层 |阅读模式

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

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

x
代码:dict1 = dict((('F',70), ('i',105), ('s',115), ('h',104), ('C',67)))




这个是我用help查到的信息
dict(mapping) -> new dictionary initialized from a mapping object's
|      (key, value) pairs



问题:为什么会有这么多括号,可以解释一下每一层的含义吗???
最佳答案
2021-10-5 14:55:19
本帖最后由 傻眼貓咪 于 2021-10-5 14:57 编辑
dict1 = dict(这里是需要变成字典的元素,必须只能是一个参数,而且是成双成对,key 和 value)

(('F',70), ('i',105), ('s',115), ('h',104), ('C',67)) # 这里表示 1 个大元祖,其中有 5 个小元祖 (tuple)

('F',70), ('i',105), ('s',115), ('h',104), ('C',67) # 这里表示 5 个元祖 (tuple)


dict2 = dict(1, 2, 3, 4) # 错误,参数只能 1 个
dict3 = dict(((1, 2), (3, 4)))# 正确,参数 1 个,而且成双成对,有 key 和 value
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-10-5 14:41:54 | 显示全部楼层
书上写的,我也不太理解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-5 14:54:06 | 显示全部楼层
括号是成对的。
1)最左和最右是一对,是dict方法的括号。
2)次最左和次最右是一对,dict方法要求输入的是一个可迭代的对象,上述代码中,输入的是一个元祖,因此是整个大元祖的括号。
3)其他括号就是小元祖的括号,大元祖由多个小元祖组成。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-5 14:55:19 | 显示全部楼层    本楼为最佳答案   
本帖最后由 傻眼貓咪 于 2021-10-5 14:57 编辑
dict1 = dict(这里是需要变成字典的元素,必须只能是一个参数,而且是成双成对,key 和 value)

(('F',70), ('i',105), ('s',115), ('h',104), ('C',67)) # 这里表示 1 个大元祖,其中有 5 个小元祖 (tuple)

('F',70), ('i',105), ('s',115), ('h',104), ('C',67) # 这里表示 5 个元祖 (tuple)


dict2 = dict(1, 2, 3, 4) # 错误,参数只能 1 个
dict3 = dict(((1, 2), (3, 4)))# 正确,参数 1 个,而且成双成对,有 key 和 value
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-10-5 16:40:21 | 显示全部楼层

感谢回答!!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-13 06:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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