2016-01-12 3 views
0
class BankAccount: 
    def __init__(self, balance, MinimumBalanceAccount): 
     """Creates an account with the given balance.""" 
     self.money = balance 
     self.penalty = 0 
     self.balance = balance 
     self.MInimumBalanceAccount = MinimumBalanceAccount 

    def deposit(self, amount): 
     """Deposits the amount into the account.""" 
     self.money += amount 
     return self.money 

    def withdraw(self, amount): 
     if self.money - amount < 0: 
      self.money -= amount+5 
      self.penalty += 5 

     else: 
      self.money -= amount 
     return self.money 


    def get_balance(self): 
     """Returns the current balance in the account.""" 
     return self.money 

    def get_fees(self): 
     """Returns the total fees ever deducted from the account.""" 
     return self.penalty 

class MinimumBalanceAccountsub_class(BankAccount): 
    def __init__(self, name, minimum): 
     self.name = name 
     self.minimum = minimum 

Я пытаюсь запустить программу, а внутренний отображается сообщение об ошибке со следующим синтаксисом Внутренняя ошибка:Python ВагЛАссоипЬ ошибка класса

> runTests aborted: TestOutcomeEvent(handled=False, test=, result=, 
> outcome='error', exc_info=(, TypeError('__init__() takes exactly 3 
> arguments (2 given)',),), reason=None, expected=False, 
> shortLabel=None, longLabel=None) is not JSON serializable 

Может ли один помочь мне, как я могу это исправить?

+0

хорошо я попытался запустить версию он все еще производит следующее, и это испытание я был given.Could это будет проблема компилятора .. – redcodex

+0

тестовый код выглядит как это с вопросом. Создайте класс BankAccount Создайте конструктор, который принимает целое число и присваивает это свойству 'balance'. Создайте метод «депозит», который берет сумму наличных денег и соответственно обновляет баланс. Создайте метод «вывести», который принимает сумму снятия наличных денег и соответственно обновляет баланс. если сумма больше, чем возврат баланса '' Неверная транзакция '' Создать подкласс MinimumBalanceAccount класса BankAccount – redcodex

+0

Код теста выглядит следующим образом: – redcodex

ответ

0

TypeError('init()takes exactly 3 arguments (2given)'),)

ошибка произошла потому, что третий аргумент деньги не был указан в конструкторе. Ниже следует решить вопрос

def __init__(self, money, balance, MinimumBalanceAccount): """Creates an account with the given balance.""" self.money = balance self.penalty = 0 self.balance = balance self.MInimumBalanceAccount = MinimumBalanceAccount

Смежные вопросы