gpt4 book ai didi

Python __init__(a,b,c,d) 不识别 "self"作为参数

转载 作者:太空宇宙 更新时间:2023-11-04 07:09:59 25 4
gpt4 key购买 nike

我正在制作一个愚蠢的小游戏来学习 Python,但我在使用 init

创建地精生物时遇到了问题

这是通用的生物类构造函数

class Creature(object):
def __init__(self,str,dex,wis,n):

这是对它的调用:

goblin = Creature(randint(1,2),randint(1,2),(randint(1,2),"Goblin"))

这是我得到的错误

TypeError: __init__() takes exactly 5 arguments (4 given)

同样奇怪的是,我以几乎相同的方式创建了 Player 生物,但没有出现错误

player = Player(str,dex,wis,name)

PlayerCreature 的子类

最佳答案

您已将第三个参数作为元组提供:

goblin = Creature(randint(1,2),randint(1,2),(randint(1,2),"Goblin"))

我假设你想要这个分开,所以只需删除括号:

goblin = Creature(randint(1,2),randint(1,2),randint(1,2),"Goblin")

第五个参数是self,自动调用。

关于Python __init__(a,b,c,d) 不识别 "self"作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16257756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com