小编Con*_*ash的帖子

super().__ init __()中的'意外的关键字参数'

我正在写一个小文字游戏.在尝试定义类变量时,我一直收到错误.

这是类代码:

class Scenery():
    def __init__(self,name,description):
        self.name=name
        self.description=description

class Door(Scenery):
    def __init__(self,openstatus,lockstatus):
        self.openstatus=openstatus
        self.lockstatus=lockstatus
        super().__init__(name,description,openstatus,lockstatus)

class CageDoor(Door):
    def __init__(self):
        super().__init__(lockstatus=False,
                         openstatus=False,
                         name="Cage Door",
                         description="It's the door to the cage.")
Run Code Online (Sandbox Code Playgroud)

main.py代码:

from tiles import CageDoor

CageDoor = CageDoor()
Run Code Online (Sandbox Code Playgroud)

而错误:

  File "main.py", line 3, in <module>
    CageDoor = CageDoor()
  *File Location*
    name="Cage Door"
TypeError: __init__() got an unexpected keyword argument 'name'
Run Code Online (Sandbox Code Playgroud)

python python-3.x

7
推荐指数
1
解决办法
2618
查看次数

标签 统计

python ×1

python-3.x ×1