如何修复' object()不带任何参数'下面的Python代码中的错误

时间:2018-02-03 07:24:08

标签: python

我试图从书中学习python这个程序很难但是它的投掷错误。请你帮我解决一下我在这里做错了什么?

获取错误消息:

df = pd.DataFrame(d['data'], columns=d['columns']).set_index('Ball_ID').T
#more general
#df = pd.DataFrame(d['data'], columns=d['columns']).set_index(d['columns'][0]).T
print (df)
Ball_ID     B1  B2  B3  B4  B5  B6  B7  B8  B9
Item-Score   5   5   5   5   5   5   5   5   5

#for write to file
df.to_csv(file, index=False)

Python代码:

Traceback (most recent call last):
  File "C:\Desktop\Python-testing\My-file.py", line 11, in 
<module>
    "So I'll stop right there"])
TypeError: object() takes no parameters

2 个答案:

答案 0 :(得分:3)

在python中,初始化方法名为__init__,而不是_init_(两个而不是一个下划线)。所以方法定义

def _init_(self, lyrics):

只定义一个普通的方法,而不是覆盖object.__init__。因此,当您使用参数初始化类时,object.__init__(['Happy birthday...'])会被调用,并且失败。

要解决此问题,请在每边写下__init__个2个下划线(共4个):

def __init__(self, lyrics):

答案 1 :(得分:1)

你的构造函数应该是def __init__而不是def _init_。 Python解释器将def _init_识别为普通函数,因此无法找到构造函数,因此找不到object()不带参数的错误。