流程控制-if条件判断
1、格式:if [ 表达式 ] #为真的话就执行下面的语句
执行语句
2、
In [2]: if '': #为空,不为真,不执行下面的语句
...: print 'ok'
...:
In [3]: if 'none': #字符串为真,执行下面的语句
print 'ok'
...:
ok
In [4]: if not '': #''为假,前面加上not,就为真
print 'ok'
...:
ok
In [5]: if 1: #布尔值1为真,0为假
print 'ok'
...:
ok
In [6]: if 0:
print 'ok'
...:
In [7]: if not 0:
print 'ok'
...:
ok
In [8]: if not 1>2: #条件判断
print 'ok'
...:
ok
In [9]: if not 1>2 and 1==2:
print 'ok'
...:
In [10]: if not 1>2 and 1==1:
print 'ok'
....:
ok
3、多重判断
if
elif
elfi
else
[root@centos7-3 python]# vim if1.py
#!/usr/bin/python
Score=int(raw_input('Please input a num: '))
if Score >= 90:
print 'A'
print 'very good'
elif Score >= 80:
print 'B'
print 'good'
elif Score >= 70:
print 'C'
print 'pass'
else:
print 'D'
print 'END'
4、if 条件判断中:
一个=(赋值) 二个==(比较)
5、首先判断表达式1成不成立,不成了然后就判断表达式2,还是不成立就判断表达式3,最后都不符合,就else
if [ 表达式1 ]:
print 'A'
elif [ 表达式2 ]:
print 'B'
elif [ 表达式3 ]:
print 'C'
else:
print 'D'
练习:
- 输入三个整数x,y,z,请把这三个数由小到大输出。 1.程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换, 然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。
使用append方式添加到列表,然后再排序
#!/usr/bin/python
list1=list()
x=int(raw_input('Please input x num: '))
list1.append(x)
y=int(raw_input('Please input y num: '))
list1.append(y)
z=int(raw_input('Please input z num: '))
list1.append(z)
list1.sort()
print list1
2.企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高 于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提 成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于 40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于 100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
#定义利润级别
level_amount=[100000, 200000, 400000, 600000, 1000000]
level_percent=[0.1, 0.075, 0.05, 0.03, 0.015, 0.01]
#定义奖金
level1=level_amount[0]*level_percent[0]
level2=level1+(level_amount[1]-level_amount[0])*level_percent[1]
level3=level2+(level_amount[2]-level_amount[1])*level_percent[2]
level4=level3+(level_amount[3]-level_amount[2])*level_percent[3]
level5=level4+(level_amount[4]-level_amount[3])*level_percent[4]
while True:
tmp=raw_input('please input profit amount:')
if tmp!=quit:
tmp=float(tmp)
print tmp
if tmp<=level_amount[0]:
bonus=level_amount[0]*level_percent[0]
elif tmp<=level_amount[1]:
bonus=level1+(tmp-level_amount[0])*level_percent[1]
elif tmp<=level_amount[2]:
bonus=level2+(tmp-level_amount[1])*level_percent[2]
elif tmp<=level_amount[3]:
bonus=level3+(tmp-level_amount[2])*level_percent[3]
elif tmp<=level_amount[4]:
bonus=level4+(tmp-level_amount[3])*level_percent[4]
else:
bonus=level5+(tmp-level_amount[4])*level_percent[5]
print "bonus is :{0}".format(bonus)
else:
break
本文转自方向对了,就不怕路远了!51CTO博客,原文链接:http://blog.51cto.com/jacksoner/2054408 ,如需转载请自行联系原作者