Перейти к содержимому
Задача · Классы · урок 10 из 11

Задача: банковский счёт

Напишите класс BankAccount — банковский счёт:

  • вызов BankAccount(owner, balance=0) сохраняет имя владельца в атрибуте owner, а начальный баланс — в атрибуте balance;
  • метод deposit(self, amount) прибавляет amount к балансу;
  • метод withdraw(self, amount) снимает amount со счёта и возвращает True, а если на счёте меньше amount, возвращает False и баланс не меняет.

Примеры:

  • BankAccount("Ann").balance → 0
  • acc = BankAccount("Ann", 50), затем acc.withdraw(20) → True, а acc.balance → 30
  • после этого acc.withdraw(40) → False, а acc.balance по-прежнему 30

Ограничения: суммы — целые неотрицательные числа; снять ровно весь баланс можно; у каждого счёта свой баланс.

В тестах getattr(acc, "balance", None) читает acc.balance, а если такого атрибута нет, даёт None.

Не добавляйте лишних импортов, если в задаче это прямо не сказано.

account.py — python
python · строк: 10
Ctrl+Enter запуск · Esc выйти из редактора

Подпишись, чтобы пройти курс

Курс бесплатный. Войди через Telegram и подпишись на канал — откроются все уроки.

Войти другим способом