流程控制-if条件判断

流程控制-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'

练习:

  1. 输入三个整数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 ,如需转载请自行联系原作者


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值