为了账号安全,请及时绑定邮箱和手机立即绑定

将字符串保存到变量,获取内建函数错误

将字符串保存到变量,获取内建函数错误

白衣非少年 2021-03-31 17:14:26
我试图将5个名称保存到变量中,但出现错误TypeError: 'builtin_function_or_method' object does not support item assignment我尝试了几种其他方法,但是没有运气,而且我似乎看不出问题出在哪里。k = 0 while k < 5:     sum = input("name: ")     ord[k] = sum     k += 1
查看完整描述

1 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞

我正在尝试将5个名称保存到变量中


不是最好的描述。更好:“我正在尝试创建一个包含5个字符串的字典。”


但我得到一个错误


ord是内置函数。它不是字典,除非您之前已分配了该名称(您ord = {}的代码中没有)。某些IDE(例如eclipse的PyDev插件)会警告您此类错误。


选择另一个名称,并将其初始化:


d = {}

k = 0 

while k < 5: 

    s = input("name: ") 

    d[k] = s

    k += 1

(sum也是内置的。)


如果您使用的是python2.x,则应使用raw_input()而不是input()。


顺便说一下,这段代码可以这样写:


d = {}

for k in range(5): 

    d[k] = input("name: ")

甚至更短:


d = { k:input('name: ') for k in range(5) }

并且由于索引是0..4,为什么不使用简单的list?


d = [ input('name: ') for _ in range(5) ]


查看完整回答
反对 回复 2021-04-06
  • 1 回答
  • 0 关注
  • 265 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信