【问题标题】:Why do I receive error TypeError: argument of type 'Name' is not iterable?为什么我收到错误 TypeError:“名称”类型的参数不可迭代?
【发布时间】:2020-11-07 15:45:01
【问题描述】:

我正在为 pandas 中的一列添加一个类,但我的错误是:

TypeError: argument of type 'Name' is not iterable

我不明白为什么,我尝试制作一个返回“通过”的 forloop。 这是我的代码

class Person:
    def __init__(self):
        list = pd.read_csv("mycsv.csv")
        self.name = self.Name()

    class Name:
        def __init__(self):
            self.name = list(['Name'].str.lower())
            for i in list:
                pass
if __name__ == "__main__":
    
    person = Person()
    checking_name = str(input()).lower()
    list = person.name

    if(checking_name in list):
        print("Hit")

错误出现在我的最后一条 if 语句中: 有什么想法吗?

【问题讨论】:

  • list 是关键字(保留字)。
  • 请使用完整的错误回溯更新您的问题。
  • @Shakeel:顺便说一句,我听说它是​​内置的。

标签: python python-3.x pandas class oop


【解决方案1】:

那是因为您试图在 list 中进行迭代,这是用于将数据更改为列表的内置 python 函数。即使你把pass放在那里,它也会在后台迭代。

【讨论】:

  • 你是说它会迭代吗?为什么我收到一个它没有迭代的错误?我应该把它放在课外的列表中吗?
  • 因为python想要迭代,但它不能——list不是一个变量——它是一个关键字。
  • @Hernandez 对你有帮助吗?
  • @Hernandez 你能投票并接受我的回答吗?
猜你喜欢
  • 2017-05-03
  • 1970-01-01
  • 2020-03-14
  • 1970-01-01
  • 1970-01-01
  • 2021-01-15
  • 2011-10-04
  • 2019-08-24
相关资源
最近更新 更多