Я пытаюсь создать программу (для домашнего задания), которая создает разные учетные записи и позволяет вносить / снимать деньги с нее. Я также должен показывать баланс всех учетных записей при запросе с Account.totalAllBalance. Все идет хорошо, но я пытаюсь выяснить, как добавить начальные остатки к моему итоговому итогу AllBalance. Я продолжаю получать эту ошибку, и я не уверен, почему. Я довольно новичок в программировании, и я должен использовать очень простое программирование, которое мы делаем в классе. У меня вопрос, почему я получаю эту ошибку и как ее исправить?
Ошибка в строке 20, в которой написано
in init
Account.totalAllBalance = Account.totalAllBalance + num
Ошибка типа: неподдерживаемые типы операндов для +: 'method' и 'int'
Пока это моя попытка:
class Account:
totalAllBalance = 0
totalAccounts = 0
def __init__(self, name, startBalance):
self.name = name
self.startBalance = startBalance
num = startBalance
if self.startBalance < .01:
print("You may not start an account with that balance.")
else :
self.deposits = 0
self.withdraws = 0
Account.totalAccounts += 1
if Account.totalAccounts is 1:
Account.totalBalance = 0
else:
Account.totalAllBalance = Account.totalAllBalance + num
def deposit(self, num):
self.deposits += num
print(self.name, "has deposited", num, "dollars.")
Account.totalAllBalance = Account.totalAllBalance + num
return(self.totalBalance())
def withdraw(self, num):
self.withdraws += num
if num > self.startBalance + -1*(self.withdraws-num) + self.deposits:
print("You may not withdraw more than your balance.")
self.withdraws -= num
else:
num2= -1 * num
print(self.name, "has withdrawn", num,"dollars.")
return(self.totalBalance())
Account.totalAllBalance = Account.totalAllBalance + num2
def totalBalance(self):
if self.withdraws is None:
W = 0
if self.deposits is None:
D = 0
S = self.startBalance
W = self.withdraws * -1
D = self.deposits
num = S + W + D
print(self.name,"has", S + W + D , "dollars in their account.")
@classmethod
def totalAllBalance(cls):
print(cls.totalAllBalance)
@classmethod
def amtAccounts(cls):
print("There is", cls.totalAccounts, "account(s).")