这样做的目的是定期输入每个帐户的金额和日期。帐户是静态的(但可以附加更多帐户)。我想要做的是循环每个帐户,并为每个帐户输入金额和日期。我做错了,我认为在增量行,可能还有追加行
之后,我想以一种有意义的方式将结果打印到屏幕上(我知道我的内容不正确,不会以合理的方式显示)
有什么想法吗?感谢
account = ['401k', 'RothIRA', 'HSA']
amount = []
date = []
while True:
print('Enter the amount for your ' + account[0] + ' account')
act = input()
amount.append(act)
print('Enter the date for this total')
dt = input()
date.append(dt)
account[] += 1
if act == '':
break
print(account, amount, date)
答案 0 :(得分:1)
在您的数据结构稍有变化之后:
account={ '401K': { 'amount' : 0, 'date': 0 },
'ROthIRA': { 'amount':0, 'date': 0},
'HSA': { 'amount': 0, 'date': 0} }
for eachKey in account.keys:
account[eachKey]['amount'] = input()
account[eachKey]['date'] = input()
print account
答案 1 :(得分:1)
我认为这是你正在尝试做的事情:
i = 0
while i < len(account):
print('Enter the amount for your ' + account[i] + ' account')
act = input()
amount.append(act)
print('Enter the date for this total')
dt = input()
date.append(dt)
i += 1
使用循环最好如下。
for i in account:
print ('Enter amount for your',i,'account')
act = input()
amount.append(act)
print ('Enter date')
dt = input()
date.append(dt)
此外,您的所有列表(帐户,金额,日期)都是按索引链接的。使用字典比其他人发布更清晰。