我有一个BankAccount类,该类允许设置余额,要存入/提取的金额,然后是一种返回余额的方法。
class BankAccount():
def __init__(self, initialBalance = 0):
self.balance = initialBalance
def __repr__(self):
return("BankAccount({})".format(self.balance))
def deposit(self, amount):
self.balance += amount
def withdraw(self, amount):
self.balance -= amount
def balance(self):
return(self.balance())
但是当我调用balance方法时(b.balance())
,它得到一个float对象而不是可调用的错误。但是,如果我调用它,b.balance
它将返回适当的金额。我对错误的含义以及为什么方法调用不起作用感到困惑。提前致谢!
具有相同名称的属性和方法将不起作用。您可以为属性指定其他名称:
class BankAccount():
def __init__(self, initialBalance = 0):
self._balance = initialBalance
def __repr__(self):
return("BankAccount({})".format(self._balance))
def deposit(self, amount):
self._balance += amount
def withdraw(self, amount):
self._balance -= amount
def balance(self):
return(self._balance)
print(BankAccount())
或直接访问属性(并删除accessor方法):
class BankAccount():
def __init__(self, initialBalance = 0):
self.balance = initialBalance
def __repr__(self):
return("BankAccount({})".format(self.balance))
def __repr__(self):
return("BankAccount({})".format(self.balance))
def deposit(self, amount):
self.balance += amount
def withdraw(self, amount):
self.balance -= amount
print(BankAccount())
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句