【问题标题】:TypeError: 'list' object is not callable while trying to access a listTypeError:“列表”对象在尝试访问列表时不可调用
【发布时间】:2011-08-09 19:13:17
【问题描述】:

我正在尝试在有列表的地方运行此代码。我需要添加到内部列表,但我收到错误

TypeError: 'list' object is not callable.

谁能告诉我我在这里做错了什么。

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)

【问题讨论】:

    标签: python callable


    【解决方案1】:

    即使我遇到了同样的错误,但我解决了它,我在工作中使用了很多列表,所以我只是重新启动了我的内核(这意味着如果您使用的是 Jupyter 或 Google Colab 等笔记本电脑,您可以重新启动并再次运行所有单元格,通过这样做,您的问题将得到解决,错误消失。

    谢谢

    【讨论】:

      【解决方案2】:
      del list
      

      上面的命令对我有用

      【讨论】:

      • 如果您分配了一个变量列表,这可能会发生。不是在这个问题的背景下,但是对我有帮助。谢谢。
      【解决方案3】:

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

      代替:

      print  wordlists(len(words))
      

      你需要使用:

      print worldlists[len(words)]
      

      而不是:

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

      你需要使用:

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

      【讨论】:

      • 规范化答案,因此我做了一个小的编辑。如果您愿意,请回滚。谢谢。
      【解决方案4】:

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

      【讨论】:

        【解决方案5】:

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

        【讨论】:

          【解决方案6】:

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

          我整理好命名后,错误就解决了。

          【讨论】:

            【解决方案7】:

            wordlists 不是一个函数,它是一个列表。你需要括号下标

            print  wordlists[len(words)]
            

            【讨论】:

            【解决方案8】:

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

            【讨论】:

              【解决方案9】:

              您正尝试在此处致电wordlists

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

              试试:

              print wordlists[len(words)]
              

              【讨论】:

                猜你喜欢
                • 2021-11-14
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2019-01-05
                • 2012-06-14
                • 2017-10-04
                • 2017-08-06
                • 2021-06-16
                相关资源
                最近更新 更多