Skip to main content
 首页 » 编程设计

python之__init__() 缺少 1 个必需的位置参数 : 'quantity'

2025年05月04日11jpfss

我收到问题中显示的错误,但我不明白为什么。即使在尝试其他 Stack Overflow 方法来修复此问题时,它也不起作用。

class Item(object): 
    def __init__(self, name, style, quantity): 
        self.name = name 
        self.style = style 
        self.quantity = quantity 
     
class Weapon(Item): 
    def __init__(self, name, style, quantity=1): 
        Item.__init__(name, style, quantity,) 
 
Bow = Weapon(name = "Bow", style = "WRanged", quantity = 1) 

受错误代码影响的行:

Traceback (most recent call last): 
  File "C:\Stuff\SG\Work\Inventory.py", line 33, in <module> 
    Bow = Weapon(name = "Bow", style = "WRanged", quantity = 1) 
  File "C:\Stuff\SG\Work\Inventory.py", line 12, in __init__ 
    Item.__init__(name, style, quantity,) 
TypeError: __init__() missing 1 required positional argument: 'quantity' 

请您参考如下方法:

改变

Item.__init__(name, style, quantity,) 

对于

super().__init__(name, style, quantity)