gpt4 book ai didi

python - 如何使用 python 有条件地对值进行装箱?

转载 作者:行者123 更新时间:2023-12-01 07:15:22 25 4
gpt4 key购买 nike

所以这个的基本原理是,我试图让用户输入他们的年薪,然后程序将通过一组 if 语句运行它,然后返回他们所处的税级,从他们的年薪中减去金额工资和返回是他们的总收入。主要问题是,它可以正确运行 0 - 9,525 美元的任何金额,但一旦你跳到 12% 和 22%,它就不再是他们的了。例如,如果您输入 100,000 美元,它只会扣除 1​​2%,而本应扣除 24%。以下是当前形式的 Python 代码:

#Takes someone's yearly salary
yearlySalary = eval(input("Please enter your yearly salary: "))

if(yearlySalary < 9525):
tax = yearlySalary * .10
yearlySalary = yearlySalary-tax

elif(yearlySalary > 9526 && yearlySalary < 38700):
tax = yearlySalary * .12
yearlySalary = yearlySalary-tax

elif(range (38701, 82500)):
tax = yearlySalary * .22
yearlySalary = yearlySalary-tax

elif(range (82501, 157500)):
tax = yearlySalary * .24
yearlySalary = yearlySalary-tax

elif(range(157501, 200000)):
tax = yearlySalary * .32
yearlySalary = yearlySalary-tax

elif(range(200001, 500000)):
tax = yearlySalary * .35
yearlySalary = yearlySalary-tax

elif(yearlySalary > 500001):
tax = yearlySalary * .37
yearlySalary = yearlySalary-tax

最佳答案

这里有一些关于税级如何运作的问题;括号应按相反的顺序排列,首先捕获最高的税级,并且只有超过该级数的金额才应按该金额征税。

此外,对于您的示例,elif(range (82501, 157500)): 不会捕获yearly_salary=100000,因为else 语句不会断言yearly_salary 是否实际上在该范围内。

它被困在 12% 中,因为使用了不正确的“AND”运算符:使用 and 而不是 &&

关于python - 如何使用 python 有条件地对值进行装箱?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58000376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com