Код: Выделить всё
class BankAccount:
def __init__(self, account_number, balance=0):
self.account_number = account_number
self.balance = balance
def deposit(self, amount):
self.balance += amount
def withdraw(self, amount):
if amount > self.balance:
raise ValueError("Insufficient funds")
self.balance -= amount
def get_balance(self):
return self.balance
class Transaction:
def __init__(self, account, amount):
self.account = account
self.amount = amount
def execute(self):
try:
self.account.withdraw(self.amount)
except ValueError as e:
print(f"Error: {e}")
def main():
account = BankAccount("123456")
account.deposit(1000)
transaction = Transaction(account, 500)
transaction.execute()
print(f"Account balance: ${account.get_balance():.2f}")
main()
Эта ошибка может привести к неожиданному поведению и потенциальной потере данных, поскольку баланс счета может быть обновлено неправильно.
Сможете ли вы обнаружить эту ошибку и исправить ее?
Подробнее здесь: https://stackoverflow.com/questions/786 ... ransaction