Python中的参数错误 - 文本冒险游戏

时间:2013-04-24 22:34:24

标签: python class import init

尝试使用Python中的游戏引擎进行文本冒险。无论如何,我一直收到此错误消息。 TypeError: module.__init__() takes at most 2 arguments (3 given)

这是我的代码:

from engine import game
from engine import event
from engine import place


class TextAdventureGame(game):
    def __init__(self):
        super(TextAdventureGame, self).__init__()
        self.introduction = ('''Welcome to Can You Escape text adventure game.
You wake up in a dark room and you have no idea where you are.''')

为什么会出现此错误?

class TextAdventureGame(game): TypeError: module.__init__() takes at most 2 arguments (3 given)

2 个答案:

答案 0 :(得分:1)

这个问题是以一种很难回答的方式提出的,但从它的外观来看,我会说错误就在这里:

class TextAdventureGame(game):

它说的是module.__init__(),而不是TextAdventureGame.__init__(),这让我觉得game是一个以奇怪方式使用的模块。但是,如果不了解您的代码,game是什么,或者看到堆栈跟踪,我们就不能做更多的事情。

答案 1 :(得分:1)

game是一个模块。您应该使用类作为基类。

>>> import os
>>> class C(os):
...   pass
... 
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: module.__init__() takes at most 2 arguments (3 given)