0

Не могу решить задачу Размещение депозита Python

Текст задачи: Вам дан класс BankAccount, и вам необходимо добавить в него метод deposit(), который добавляет определенную сумму в свойство private balance. Код должен объявить объект BankAccount с начальным балансом 0, получить число от пользовательского ввода, добавить его в баланс при помощи метода пополнения счета и вывести объект. Добавьте необходимый метод, чтобы код работал корректно и предоставлял требуемый вывод. Вот моё решение: class BankAccount: def __init__(self, balance, depo): self._balance = balance self.depo = depo def __repr__(self): return "Account Balance: {}".format(self._balance) # место для вашего кода def deposit(self, depo): depo = self.depo self_balance += self.depo acc = BankAccount(0) acc.deposit(int(input())) print(acc._BankAccount__repr()) Постоянно ошибка TypeError: __init__() missing 1 requred argument: depo Хотя в init я depo указал

25th Mar 2021, 8:45 AM
Павел Ильминский
Павел Ильминский - avatar
7 Answers
+ 1
class BankAccount: def __init__(self, balance): self._balance = balance def __repr__(self): return "Account Balance: {}".format(self._balance) # место для вашего кода def deposit (self, deposit ): self._deposit = deposit self._balance += self._deposit return self._balance acc = BankAccount(0) acc.deposit(int(input())) print(acc) Пользуйтесь, обратите внимание на скрытые аргументы
13th May 2021, 7:57 PM
Volodymyr Shylov
Volodymyr Shylov - avatar
0
When you create the variable "acc" you set it equal to BankAccount(0, __ <--- missing??)
25th Mar 2021, 9:29 AM
Slick
Slick - avatar
0
I also set the variable to acc.deposit (int(input())
25th Mar 2021, 9:33 AM
Павел Ильминский
Павел Ильминский - avatar
0
If you have certain parameters when defining a class, they need to be provided when creating an instance. You are missing the "depo" parameter
25th Mar 2021, 9:34 AM
Slick
Slick - avatar
0
Нет так и не решил, пока пропустил её.
23rd Apr 2021, 6:39 AM
Павел Ильминский
Павел Ильминский - avatar
0
class BankAccount: def __init__(self, balance,): self._balance = balance def __repr__(self): return "Account Balance: {}".format(self._balance+int(input ())) # место для вашего кода acc = BankAccount(0) #acc.deposit(int(input())) print(acc) Только так смог её победить. Но скорее всего это не тот код что нужен. Но главное результат верный даёт
23rd Apr 2021, 11:07 AM
Андрей Самоваров
Андрей Самоваров - avatar
- 1
Решил? Тоже не как не пойму
20th Apr 2021, 8:59 PM
Андрей Самоваров
Андрей Самоваров - avatar