试图建立一个税计算器逻辑的做法双变量:for循环(税计算器)
import sys
marital = sys.argv[1]
salary = sys.argv[2]
totalTaxes = 0
if marital == "single":
tiers = [415050,413350,190150,91150,37650,9275]
taxrates = [.35,.33,.28,.25,.15,.10]
if salary > tiers[i]:
for i, j in tiers, taxrates:
for n in range(i-(i+1)):
while n > tiers[i]:
totalTaxes += (n * .35)
这对我来说很有意义,当我看着它,但对于循环导致错误。我以前见过双循环变量,但不记得如何去做。我以某种方式使用enumerate
或itertools
?
另外,我接受任何有关如何减少我在这里的嵌套循环数的建议。我相信这是可行的。任何和所有的帮助,不胜感激。
为了清楚起见,for n in range(i,i-(i+1)):
部分将计算该第一个区间的税额括号。从本质上讲,我正在计算间隔的时间间隔的每个美元的税率,并将其添加到totalTaxes。效率不高,但这是我的全部。
顺便说错误是ValueError: too many values to unpack
在设置“i”之前,您正在使用'tiers [i]'。 – Barmar
'对a,b in zip(iterable_a,iterable_b)'? –