Python 板


LINE

大家好~ 问题:字典 {key:value} a = {1:'one'} #一般定义 OK b = dict(one=1, two=2, three=3) #指定变数表达 OK c = dict(1='one') #用dict() key用数字 结果不行 SyntaxError: keyword can't be an expression 为何用1='one'建立字典不行呢? PS.原则上,只要能hash的,应该都能当作key的说。 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.167.38.188
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1541042008.A.525.html
1F:→ justoncetime: 这个是壹→ 1='one' 是什麽意思可以解释一下吗? 11/01 11:39
2F:→ neil987: 其实是可以 只是你用错方法 11/01 11:52
3F:→ neil987: >>dict([(1, 2), (3, 4)]) 11/01 11:52
4F:→ neil987: >>{1: 2, 3: 4} 11/01 11:52
5F:→ justoncetime: 解法当然有dict([(1,'one')]) 但直接得解,不如 11/01 11:54
6F:→ justoncetime: 从问题中思考、学习收获会更多 11/01 11:55
7F:→ neil987: https://i.imgur.com/YoaFxgV.jpg Ref:python3 document 11/01 11:56
8F:→ neil987: 所以这说起来其实不是dict的问题XD 11/01 12:09
9F:→ ThxThx: 仔细看错误是SyntaxError(而不是 ValueError) 11/01 12:49
10F:→ shadow0326: 你就想想,为什麽你的b不是dict('one'=1, 'two'=2) 11/01 15:24
11F:推 bugbug777: 我现在好乱 11/01 17:17
12F:→ bugbug777: neil987是正解 justoncetime这个也行喔… 11/01 17:18
13F:→ bugbug777: 啊啊 我没看清楚 sry 11/01 17:23
我猜想 当初dict() 想用「变数=值」来设定字典: 但因为变数命名有很多条件: 比如不能用 1='one' "abc"='c' 以「数字开头」「字串」皆不能当变数名称 这限制了字典key表达 所以後来增加了用iterable的设定 如同neil987用的dict([(1, 2), (3, 4)]) 或dict(((1, 2), (3, 4)))亦可 结论:用list或tuple设定字典,避免key的限制。 ※ 编辑: Angesi (1.167.38.243), 11/03/2018 10:02:05
14F:→ justoncetime: 跟我在一楼料想的一样,连基本的assign都没弄清楚 11/03 11:19
15F:→ justoncetime: 你观念里有变数,就没有常数吗? 11/03 11:25
16F:→ justoncetime: 再者游戏规则往往有其意义,有无思考过为何不能那样 11/03 11:27
justoncetime 我比较希望你能和大家分享一下: dict()中用表达式设定字典 意义为何? (为何要用一个key受限的表达呢?) ※ 编辑: Angesi (1.167.38.48), 11/04/2018 13:58:56
17F:→ justoncetime: 平常就不能用 为何里面就要可以用。你不去找答案而 11/04 16:20
18F:→ justoncetime: 在过程成长,等着伸手为何人家就得上菜? 11/04 16:20
19F:→ justoncetime: 我可以分享的是,往往我都尽量不直接给答案而用引 11/04 16:22
20F:→ justoncetime: 导式提问,因为找答案的过程中会获得更多。 11/04 16:22
21F:→ rofellosx: 这东西没有猜想.. 11/05 09:09
22F:→ rdchen1124: 整篇看完,发现justoncetime大大整个循循善诱,希望楼 11/07 16:11
23F:→ rdchen1124: 主能多思考一下,你的错误讯息应该可以给你答案 11/07 16:12
24F:推 benedict76: 1='one' 这样的程式第一次看到 11/07 22:53







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP