所以我当前的代码片段运行正常,但是我想创建一个list
,在那里我可以存储所有的payOut
(变量)
所以如果:
wage = [10 , 5, 4]
和
addedHours = [2 , 3, 2]
我想要的新变量(称之为totalWage
):
totalWage = [20, 15, 9]
我希望这个totalWage
变量成为下面代码中for
循环的一部分。我该怎么做
def printPayroll(self):
totalPayroll = 0
i = 0
product = ""
for y in names:
payOut = float(wage[i]) * float(addedHours[i])
totalPayroll += payOut
product += ('%-10s%-10s%-0s%-0s') % (str(names[i]), str(addedHours[i]), str(payOut), "\n")
i += 1
finalPayroll = "Total Payroll = $" + str(totalPayroll)
另外,工资单的计算和打印可以分开,以便更好地编码。也可以用
zip
函数简化for循环。我不包括在内,因为这不是问题的一部分您只需要定义一个
totalWage
列表,并为该列表中的每个项目添加wage*addedHours
。此外,还可以使用enumerate
获取索引和列表中的项您需要在函数中声明一个空列表,并在循环中不断追加每个payout值。如果有许多行要使用zip&;进行计算,也可以更快地使用它;使用数据帧存储结果,以防以后将输出写入csv并存储以供将来参考。 代码如下:
希望这有帮助
相关问题 更多 >
编程相关推荐