2
好吧,所以我有这个类型错误:“名单”对象不是可调用Python的错误:列表对象不可调用与For循环
这是对的(如果类型==“d”)以下环
确切错误如下:
Traceback(most recent call last):
file"test.py", line 55 in <module>
main()
File "test.py", line 49, in main
for i in range(len(accountlist())):
TypeError: 'list' object is not callable
我的代码是下面,我试图把每一个括号括号和重命名列表中不同的东西,总是围绕着同样的错误得到。
我在这里做错了什么?
class BankAccount:
def __init__(self, getbankaccount, inputAmount=0):
self.__balance = inputAmount
self.__numDeposits = 0
self.__numWithdrawals = 0
self.__totalDeposits = 0
self.__totalWithdrawals = 0
self.__getbankaccount=getbankaccount
def getBalance(self):
return self.__balance
def getNumDeposits(self):
return self.__numDeposits
def getNumWithdrawals(self):
return self.__numWithdrawals
def getTotalDeposits(self):
return self.__totalDeposits
def getTotalWithdrawals(self):
return self.__totalWithdrawals
def getbankaccount(self):
return self.__getbankaccount
def Deposit(self,amount):
self.__balance = self.__balance + amount
self.__numDeposits = self.__numDeposits + 1
self.__totalDeposits = self.__totalDeposits + amount
return self.__balance
def Withdrawal(self,amount):
if (self.__balance >= amount):
self.__balance = self.__balance - amount
self.__numWithdrawals = self.__numWithdrawals + 1
self.__totalWithdrawals = self.__totalWithdrawals + amount
return True
else:
return False
def main():
accountlist=[]
numbers=eval(input())
for i in range(numbers):
account=input()
amount=eval(input())
initial=BankAccount(account, amount)
accountlist.append(initial)
type=input()
while type!='#':
if type=='D':
account=input()
amount=eval(input())
for i in range(len(accountlist())):
if(account==accountlist[i].getbankaccount()):
index=i
accountlist[index].Deposit(amount)
Print(amount, type, account)
type=input()
main()
修复了TypeError,非常感谢,但它给了我一个SyntaxError:在第41行解析时意外的EOF。这将是第一个for循环的第一个amount = eval(input()),任何想法造成这种情况? – user2305960 2013-05-05 21:46:10
@ user2305960我不确定你为什么需要'eval'。 'eval'用于评估包含在字符串中的python代码。如果您只是从用户那里查找金额,我会将其更改为'amount = input()'。 – 2013-05-05 21:47:29
是不是eval(input())用于将输入转换为int? – user2305960 2013-05-05 21:49:27