关于python字典037讲课后作业
请问:为什么 这个创建方式是错的啊!!c = dict(99="吕布", 90="关羽", 60="刘备") 因为参数跟变量名的命名规则是一样的呀,99 不符合变量名的命名规则所以当你字典的键是数字的时候就不能用这种方式创建字典 本帖最后由 liuhongrun2022 于 2023-2-5 21:35 编辑
命名时,不能以数字开头
变量也一样
(python 3.x 可以以中文命名)
>>> c = dict(吕布=99, 关羽=90, 刘备=60)
>>> c
{'吕布': 99, '关羽': 90, '刘备': 60}
本帖最后由 sfqxx 于 2023-2-5 21:18 编辑
命名参数时,不能以数字开头
错误:
25j_hh
23book
68-gfcj
……
正确:
小甲鱼
teacher
刘备
shh_285
这里提供一种思路:c = dict(吕布=99, 关羽=90, 刘备=60)
当然也可以:c = dict(a=99, b=90,d=60)
如果答案对您有帮助,请设置最佳答案! sfqxx 发表于 2023-2-5 21:11
命名参数时,不能以数字开头
错误:
谢谢! isdkz 发表于 2023-2-5 20:52
因为参数跟变量名的命名规则是一样的呀,99 不符合变量名的命名规则
所以当你字典的键是数字的时候就不 ...
是不是只有使用dict方法创建需要传参的时候,不能用数字,像这样a={'99'='吕布'}就是可以的 本帖最后由 isdkz 于 2023-2-5 22:47 编辑
lbh8399 发表于 2023-2-5 22:40
是不是只有使用dict方法创建需要传参的时候,不能用数字,像这样a={'99'='吕布'}就是可以的
并没有 a={'99'='吕布'} 这种写法,你要用数字做字典的键的话就用下面两种方式:
>>> c = dict(((99, "吕布"), (90, "关羽"), (60, "刘备")))
>>> c
{99: '吕布', 90: '关羽', 60: '刘备'}
>>> c = {99: '吕布', 90: '关羽', 60: '刘备'}
>>> c
{99: '吕布', 90: '关羽', 60: '刘备'}
>>>
当然, c = dict(((99, "吕布"), (90, "关羽"), (60, "刘备"))) 这种方式有很多变种,比如:
>>> c = dict(zip((99, 90, 60), ("吕布", "关羽", "刘备")))
>>> c
{99: '吕布', 90: '关羽', 60: '刘备'}
>>>
这些了解一下就好,暂时不能理解也没有关系,就记住常用的一种方式(c = {99: '吕布', 90: '关羽', 60: '刘备'})就好
学习了
页:
[1]