Какой аргумент просит функция в классе
Ребят, я сделал код ниже, запустил его. Но выдаёт ошибку в 14 строке:
TypeError: Main() missing 1 required positional argument: 'self'
Сам код:
from random import randint as rndigit
class Program:
def Main(self):
procent_chance = int(input("Введите шанс: "))
self.Calculate(procent_chance)
def Calculate(self, procent_chance):
now_chance = rndigit(0, 100)
if now_chance == procent_chance or now_chance <= procent_chance:
return (f"Вам повезло с шансом: {now_chance}")
return (f"Вам не повезло с шансом: {now_chance}")
if __name__ == "__main__":
Program.Main()
input()
Скажите пожалуйста что делать, чтобы программа работала.
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Попробуйте так:
from random import randint as rndigit
class Program:
def main(self):
procent_chance = int(input("Введите шанс: "))
result = self.calculate(procent_chance)
return result
def calculate(self, procent_chance):
now_chance = rndigit(0, 100)
if now_chance == procent_chance or now_chance <= procent_chance:
return f"Вам повезло с шансом: {now_chance}"
return f"Вам не повезло с шансом: {now_chance}"
if __name__ == "__main__":
# Program.Main()
program = Program()
print(program.main())
input()