我试图从书中学习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
答案 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()不带参数的错误。