首先你的代码就是错误的因为bonuses没有赋值,bonuses我记得中文意思就是奖金的意思,所以应该讲代码中的奖金更改成bonuses,当然也可以选择将最后一行中的bonuses更改成奖金,在Python3.0中允许变量名为中文(但是不推荐这样做)
更改后的代码:
- i=int(input('利润:'))
- if i <= 10000:
- bonuses = i * 0.1
- elif 100000<i<=200000:
- bonuses= 100000*0.1+(i-100000)*0.075
- elif 200000<i<=400000:
- bonuses = 100000*0.1+100000*0.075+(i-200000)*0.05
- elif 400000<i<=600000:
- bonuses = 100000*0.1+100000*0.75+200000*0.05+(i-400000)*0.03
- elif 600000<i<=1000000:
- bonuses = 100000*0.1+100000*0.75+200000*0.05+200000*0.03+(i-600000)*0.15
- elif i>1000000:
- bonuses = 100000*0.1+100000*0.75+200000*0.05+200000*0.03+400000*0.15+(i-1000000)*0.01
- else:
- bonuses = 0
- print('奖金:',bonuses)
复制代码
解释你的问题:
第一行你提出利润后面为啥加冒号。
你要观察它是被单引号引起来的,它就是一个字符串,就是显示/提示给用户看的没有其他作用,你去掉冒号程序照样可以正常运行。
最后一行你提出的奖金后面为啥加冒号,bonuses前面为什么加逗号
奖金后面为啥加冒号因为它也是被单引号引起来的,就是一个字符串,而后面为什么bonuses前面为什么加逗号,因为它是一个整数类型的变量要与前面的字符串必须分开(两者不是同一类型如果bonuses也是字符串类型则可以通过+号来实现字符串连接)所以需要加一个逗号来分开,如果你不加逗号就会报错!