-1

在以下代码片段中:

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

谢谢你的帮助!

4

1 回答 1

1

您会收到此异常,因为list从未定义过该对象。使用前先初始化list

例如像这样:

list = []

您的代码正在尝试将项目分配给内置序列类型列表

将变量命名为现有类型不是一个好习惯...给变量取另一个名称,例如lines

>>> lines = []
>>> type(lines)
<class 'list'>
于 2011-12-06T22:07:21.050 回答