📌  相关文章
📜  typeerror: __init__() got an unexpected keyword argument 'column' - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:20:42.340000             🧑  作者: Mango

Type Error: __init__() got an unexpected keyword argument 'column' Error in Python

当出现 typeerror: __init__() got an unexpected keyword argument 'column' 错误时,可能是因为我们给一个函数传递了一个未被定义的参数。在Python中,类定义的参数必须在构造方法 __init__() 中先定义才能使用。

代码示例

例如,在下面的代码中,当我们尝试初始化 DataFrame 时,代码会抛出 typeerror: __init__() got an unexpected keyword argument 'column' 错误:

import pandas as pd

data = {'name': ['Tom', 'Jack', 'Steve', 'Ricky'], 'age': [28, 34, 29, 42]} 
df = pd.DataFrame(data, columns=['name', 'age', 'gender'])

这是因为 DataFramecolumns 参数没有定义在 __init__() 方法中。

解决方案

要解决此错误,我们可以确保在给函数传递参数之前,先定义它们。

对于上面的示例,我们可以将 “gender” 参数添加到 data 字典中,如下所示:

import pandas as pd

data = {'name': ['Tom', 'Jack', 'Steve', 'Ricky'], 'age': [28, 34, 29, 42], 'gender': ['Male', 'Male', 'Female', 'Male']} 
df = pd.DataFrame(data, columns=['name', 'age', 'gender'])

现在,当我们再次运行此代码时,不会再出现 typeerror: __init__() got an unexpected keyword argument 'column' 错误,因为我们已经定义了所有传递给函数的参数。

结论

在Python中,当您尝试向函数传递未定义的参数时,会出现 typeerror: __init__() got an unexpected keyword argument 'column' 等错误。 为了避免这种情况,您应该首先定义所有的参数,然后再使用它们。