2010-02-12 44 views
19

让我开始说,我也得到相同的错误乳清定义__init__和运行super()__init__。我只将它简化为这种自定义方法,以查看错误是否仍然发生。Python奇怪的例外。我找到了我的第一个Python错误还是这是一个noob错误?

import HTMLParser 

class Spider(HTMLParser): 
    """ 
    Just a subclass. 
    """ 

仅此模块中提出了以下错误:

Traceback (most recent call last): 
    File "D:\my\path\to\my\file 
    class Spider(HTMLParser): 
TypeError: Error when calling the metaclass bases 
    module.__init__() takes at most 2 arguments (3 given) 
+10

谁投票决定关闭正因为这个问题很容易回答,没有按?并不意味着它是无保证的,Python的例外显然不是很有用,你不应该为模块子类化,因此Python可能会更好地说“这个错误是由于错误地对模块进行子分类而引起的”。毕竟,它是不是一个noob错误有一个错字或导入错误。 – orokusaki 2010-02-12 17:48:16

+1

有留言是definnetly更好的调试信息。 – 2014-09-14 12:03:43

回答

33

答案是,我是一个完整的小白。这是一个模块,而不是一个班级,但是如果其他新手遇到同样的问题,我会留下来。

解决方案:

from HTMLParser import HTMLParser 

每次我想我开始成为一名职业球员,这样的事情发生:(

+3

我不知道,我有实际上,这看起来让很多人绊倒了,模块和模块中的类名称相同。 – BigBeagle 2010-02-12 17:44:35

+6

我认为'complete noob'和'pro'之间存在着相当多的存在范围。 – MattH 2010-02-12 17:48:10

+0

(删除了多个用户的多个标志的注释集;关于该问题的题外话) – 2010-02-12 21:55:52

相关问题