【发布时间】:2020-07-01 05:21:39
【问题描述】:
我正在尝试制作一个简单的游戏,我有一个 Character 类,它有如下所示的统计信息(字典)
class Character():
def __init__(self, name):
self.name = name
stats = {
"Health" : 100,
"Attack" : 1,
"Defence": 1 }
我有一个 Player 类,它有一个带有参数 self、attack、defend 和enemy 的攻击方法我尝试从我使用的统计数据中访问值
def attack(self, attack = self.stats.get("Attack") , defence= self.stats.get("Defence"), enemy):
pass
但它说
非默认参数遵循默认参数
self 不是默认论点吗?我该如何解决? (我对 OOP 不太满意)
【问题讨论】:
-
您的问题中没有关于 OOP 或字典的内容。
enemy必须有一个默认值 - 或者在第二个位置。 -
@DYZ 我的编辑提示自己出错
-
不要相信编辑器,相信错误信息。它会告诉您问题出在哪里以及如何解决。
-
更有可能表明
attack出错。 -
@Putnam,
attack很好。enemy不是。
标签: python default-value