需要帮助让循环正确迭代

时间:2012-10-16 22:01:52

标签: python-3.2

我正在为此做家庭作业,而且我完成了大部分工作,我的问题是其中一个for循环出现了问题,因为我得到的显示只有一行,因为它应该是每一个值的一行范围50,000 - 60,000,步长值为50.

    def computeTax(status, taxableIncome):
        print("Taxable Income/" + "\t" + "Single/" + "\t" + "Married Joint/" + \
              "\t" + "Married Separate/" + "  " + "Head of Household")
        for taxableIncome in range(50000, 60001, 50):
            for status in range(1, 5, 1):
              if (status == 1):    #tax calculation for single person
                 tax1 = 8350 * .10 + (33950 - 8350) * 0.15 + \
                       (taxableIncome - 33950) * 0.25
                 tax1 = round(tax1,0)
              if (status == 2):   #tax calculation for married file jointly
                 tax2 = 16700 * .10 + (67900 - 16700) * 0.15 + \
                        (taxableIncome - 67900) * 0.15
                 tax2 = round(tax2,0)
              if (status == 3):   #tax calculation for married file separately
                 tax3 = 8350 * .10 + (33950 - 8350) * 0.15 + \
                       (taxableIncome - 33950) * 0.25
                 tax3 = round(tax3,0)
              if (status == 4): #tax calculation for head of household
                 tax4 = 11950 * .10 + (45500 - 11950) * 0.15 + \
                       (taxableIncome - 45500) * 0.25
                 tax4 = round(tax4,0)
         print(str(tax1) + "\t" + str(tax2) + "\t" + str(tax3) + "\t" + str(tax4))
        return (status, taxableIncome)


    computeTax(range(1, 5, 1),range(50000, 60001, 50))              

1 个答案:

答案 0 :(得分:0)

我不熟悉python,但是你必须像使用PHP那样定义代码块吗? EG

if (status == 1):    #tax calculation for single person
{                 
tax1 = 8350 * .10 + (33950 - 8350) * 0.15 + \
                       (taxableIncome - 33950) * 0.25
                 tax1 = round(tax1,0)
}
像我说的那样;不熟悉Python,但我想我可能会给你一个答案;如果我完全离开那么抱歉并祝你好运。