Я относительно новичок в ООП в Python и создаю небольшую программу, чтобы начать работу. Проблема в том, что когда я создаю объект, независимо от того, сколько позиционных аргументов я использую, у меня появляется ошибка с количеством аргументов.
Поскольку я довольно новичок в этой области программирования, яЯ не совсем уверен, что попробовать, но я попытался поэкспериментировать с этапами инициализации атрибута, однако это полностью отключает программу.
Программа:
import random
class character:
def __init__(self, name, skill, brains, home, strength, force):
self.name = name
self.skill = skill
self.brains = brains
self.home = home
self.strength = strength
self.force = force
class force_user(character):
def __init__(self, name, skill, brains, home, strength, force, dark_force, light_force):
super().__init__(self, name, skill, brains, home, strength, force)
self.dark_force = dark_force
self.light_force = light_force
class jedi(force_user):
def __init__(self, name, skill, brains, home, strength, force, dark_force, light_force, master, rank):
super().__init__(self, name, skill, brains, home, strength, force, dark_force, light_force)
self.master = master
self.rank = rank
a = jedi('Yoda', 46, 17, 'Dagobah', 34, 97, 2, 10, "N'Kata Del Gormo", 'Grand Master')
Ошибки:
Когда у меня есть аргумент 'Grand Master'
'rank' в объекте 'a', я получаю это сообщение:
Traceback (most recent call last):
File [file directory], line 37, in <module>
a = jedi('Yoda', 46, 17, 'Dagobah', 34, 97, 2, 10, "N'Kata Del Gormo", 'Grand Master')
File [file directory], line 32, in __init__
super().__init__(self, name, skill, brains, home, strength, force, dark_force, light_force)
TypeError: __init__() takes 9 positional arguments but 10 were given
и когда я удаляю аргумент 'Grand Master'
, я получаю этоошибка:
Traceback (most recent call last):
File [File Directory, line 37, in <module>
a = jedi('Yoda', 46, 17, 'Dagobah', 34, 97, 2, 10, "N'Kata Del Gormo")
TypeError: __init__() missing 1 required positional argument: 'rank'
Я сам не совсем понимаю проблему, но любая помощь или совет будут полезны!