猿问

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

我试图将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


白衣非少年
浏览 266回答 1
1回答

翻翻过去那场雪

我正在尝试将5个名称保存到变量中不是最好的描述。更好:“我正在尝试创建一个包含5个字符串的字典。”但我得到一个错误ord是内置函数。它不是字典,除非您之前已分配了该名称(您ord = {}的代码中没有)。某些IDE(例如eclipse的PyDev插件)会警告您此类错误。选择另一个名称,并将其初始化:d = {}k = 0&nbsp;while k < 5:&nbsp;&nbsp; &nbsp; s = input("name: ")&nbsp;&nbsp; &nbsp; d[k] = s&nbsp; &nbsp; k += 1(sum也是内置的。)如果您使用的是python2.x,则应使用raw_input()而不是input()。顺便说一下,这段代码可以这样写:d = {}for k in range(5):&nbsp;&nbsp; &nbsp; d[k] = input("name: ")甚至更短:d = { k:input('name: ') for k in range(5) }并且由于索引是0..4,为什么不使用简单的list?d = [ input('name: ') for _ in range(5) ]
随时随地看视频慕课网APP

相关分类

Python
我要回答