关于python:TypeError:尝试访问列表时,’list’对象不可调用

TypeError: 'list' object is not callable while trying to access a list

我正在尝试运行这个代码,其中有一个列表列表。我需要添加到内部列表,但我得到了错误

1
TypeError: 'list' object is not callable.

有人能告诉我我这里做错了什么吗?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def createlists():
    global maxchar
    global minchar
    global worddict
    global wordlists

    for i in range(minchar, maxchar + 1):
        wordlists.insert(i, list())
    #add data to list now
    for words in worddict.keys():
        print words
        print  wordlists(len(words)) # <--- Error here.
        (wordlists(len(words))).append(words)  # <-- Error here too
        print"adding word" + words +" at" + str(wordlists(len(words)))
    print wordlists(5)

要访问列表的元素,需要使用方括号([])而不是括号(())。

而不是:

1
print  wordlists(len(words))

您需要使用:

1
print worldlists[len(words)]

而不是:

1
(wordlists(len(words))).append(words)

您需要使用:

1
worldlists[len(words)].append(words)


要获得列表中的元素,必须使用list[i]而不是list(i)


单词表不是函数,而是列表。你需要括号下标

1
print  wordlists[len(words)]


当我调用一个与另一个分类为列表的变量同名的函数时,也得到了错误。

一旦我解决了命名的问题,错误就解决了。


试试wordlists[len(words)]()是一个函数调用。当您执行wordlists(..)时,python认为您正在调用一个名为wordlists的函数,结果是一个list函数。因此出现了错误。


你想打电话给wordlists这里:

1
print  wordlists(len(words)) <--- Error here.

尝试:

1
print wordlists[len(words)]


检查保存程序的文件名。如果文件名是wordlists。然后你会得到一个错误。您的文件名不应与程序中使用的任何方法函数相同。