设为首页 收藏本站
查看: 954|回复: 0

[经验分享] Python条件判断

[复制链接]

尚未签到

发表于 2018-8-5 09:55:12 | 显示全部楼层 |阅读模式
  Python 条件语句
  需要考虑的问题:
  1.老婆给当程序员的老公打电话:“下班顺路买10个包子带回来,如果看到卖西瓜的,就买1个。”
  当晚,程序员老公手捧一个包子进了家门……
  老婆怒道:“你怎么就买了一个包子?!”
  老公答曰:“因为看到了卖西瓜的。”
  2.如果明天下雨,就呆在家里
  3. 如果看到西瓜,并且1块钱一斤,就买一个
  4. 如果天气好,我兜里还有1000块钱,我就出去嗨
  5. 老师长得帅,或者老师教的好,我就好好学习,天天向上
  6. 兜里有1000块钱 或者 室友请我, 我就出去吃大餐
  7. 如果明天不上课,我就去看电影
  8. 如果明天不上课,并且兜里有10000或者朋友请我,我就出去玩。
  9. 老师帅 或者 我今天高兴并且我已经吃饱了饭,我就学习
  总结:计算机之所以能做很多自动化的任务,因为它可以自己做条件判断,以上问题都可通过计算机来解决。
  Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
  可以通过下图来简单了解条件语句的执行过程:
DSC0000.png

  Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。
  Python 编程中 if 语句用于控制程序的执行,基本形式为:
if 判断条件:  
    执行语句……
  
else:
  
    执行语句……
  其中"判断条件"成立时(为真),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。
  else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句,具体例子如下:
# -*- coding: UTF-8 -*-  

  
# 例1:if 基本用法
  

  
flag = False
  
name = raw_input()
  
if name == 'python':         # 判断变量否为'python'
  
    flag = True          # 条件成立时设置标志为真
  
    print 'welcome boss'    # 并输出欢迎信息
  
else:
  
    print name              # 条件不成立时输出变量名称
  
输出结果为:
  
>>> luren         # 输出结果
  if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。
  当判断条件为多个值时,可以使用以下形式:
if 判断条件1:  
    执行语句1……
  
elif 判断条件2:
  
    执行语句2……
  
elif 判断条件3:
  
    执行语句3……
  
else:
  
    执行语句4……
  实例如下:
# -*- coding: UTF-8 -*-  
# 例2:elif用法
  

  
num = 5
  
if num == 3:            # 判断num的值
  
    print 'boss'
  
elif num == 2:
  
    print 'user'
  
elif num == 1:
  
    print 'worker'
  
elif num < 0:           # 值小于零时输出
  
    print 'error'
  
else:
  
    print 'passer'     # 条件均不成立时输出
  
输出结果为:
  
>>> roadman      # 输出结果
  根据年龄判断是否成年:
age = 3  
if age >= 18:
  
    print 'your age is', age
  
    print 'adult'
  
else:
  
    print 'your age is', age
  
    print 'teenager'
  如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。
#!/usr/bin/python  
# -*- coding: UTF-8 -*-
  

  
# 例3:if语句多个条件
  

  
num = raw_input()
  
num = int(num)
  
if num >= 0 and num <= 10:    # 判断值是否在0~10之间
  
    print 'hello'
  
>>> hello      # 输出结果
  

  
num = raw_input()
  
if num < 0 or num > 10:    # 判断值是否在小于0或大于10
  
    print 'hello'
  
else:
  
   print 'undefine'
  
>>> undefine      # 输出结果
num = 8  
# 判断值是否在0~5或者10~15之间
  
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):
  
    print 'hello'
  
else:
  
    print 'undefine'
  
>>> undefine      # 输出结果
  当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。
简单的语句组
  你也可以在同一行的位置上使用if条件判断语句,如下实例:
# -*- coding: UTF-8 -*-  

  
var = 100
  

  
if ( var  == 100 ) : print "变量 var 的值为100"
  

  
print "Good bye!"
  
以上代码执行输出结果如下:
  
变量 var 的值为100
  
Good bye!
  if语句嵌套例子:
  根据工资决定输出内容:
#coding:utf8  
salary = raw_input
  
('输入你的工资')
  
salary = float(salary)
  
rate = 0.2
  
if
  
salary >= 10000:
  

  
poket_money = salary * rate
  

  
if
  
poket_money >= 5000:
  

  
print '兜里剩%d' % poket_money
  

  
print
  
'活挺好'
  

  
elif
  
poket_money >= 4000:
  

  
print '兜里剩%d' % poket_money
  

  
print '有零花钱'
  

  
elif
  
poket_money >= 3000:
  

  
print '兜里剩%d' % poket_money
  

  
print '有肉吃'
  

  
elif
  
poket_money >= 2000:
  

  
print '兜里剩%d' % poket_money
  

  
print '有饭吃'
  

  
else:
  

  
print '兜里剩%d' % poket_money
  

  
print '活不了了'
  
else:
  

  
print  '继续努力吧'
  
  了解三元表达式
  Expression1 if boolean_expression else Expression2
  如果满足条件A大于B,则max值为A,反之max为B
  如:max=A if A>B else B
  例如:
DSC0001.png

  开场问题的具体代码实现:
  1.买包子问题:
DSC0002.png

  2. 如果明天下雨,就呆在家里
DSC0003.png

  3.看到西瓜并且一块钱一斤就买一个
DSC0004.png

  4. 如果天气好,我兜里还有1000块钱,我就出去嗨
DSC0005.png

  5. 老师长得帅,或者老师教的好,我就好好学习,天天向上
DSC0006.png

  其它问题请同学们课后自行完成。
  扩展猜数字实例:
DSC0007.png

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-546847-1-1.html 上篇帖子: python, my first code 下篇帖子: Python3切换TP-LINK外网IP(ADSL)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表