在以下代码片段中:
def func_5_2(datei, num):
import linecache
i = 0
number = num + 1
l = []
while True:
l[i] = linecache.getline(datei, number)
if (l[i] == ''):
break
是否有可能解决我在这条线上遇到的问题?
list[i] = linecache.getline(datei, number)
这是我得到的错误:
File "/home/user/gosection.py", line 27, in func_5_2
list[i] = linecache.getline(datei, number)
TypeError: 'type' object does not support item assignment
感谢您的帮助!
答案 0 :(得分:1)
您会收到此异常,因为永远不会定义对象list
。在使用之前初始化list
。
例如:
list = []
您的代码正在尝试将项目分配给内置序列类型list。
将变量命名为现有类型并不是一个好习惯...
为变量赋予另一个名称,如lines
:
>>> lines = []
>>> type(lines)
<class 'list'>