前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python条件判断

Python条件判断

作者头像
py3study
发布2020-01-14 15:30:17
2.3K0
发布2020-01-14 15:30:17
举报
文章被收录于专栏:python3

Python 条件语句

需要考虑的问题:

1.老婆给当程序员的老公打电话:“下班顺路买10个包子带回来,如果看到卖西瓜的,就买1个。” 当晚,程序员老公手捧一个包子进了家门…… 老婆怒道:“你怎么就买了一个包子?!” 老公答曰:“因为看到了卖西瓜的。”

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

3. 如果看到西瓜,并且1块钱一斤,就买一个

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

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

6. 兜里有1000块钱 或者 室友请我, 我就出去吃大餐

7. 如果明天不上课,我就去看电影

8. 如果明天不上课,并且兜里有10000或者朋友请我,我就出去玩。

9. 老师帅 或者 我今天高兴并且我已经吃饱了饭,我就学习

总结:计算机之所以能做很多自动化的任务,因为它可以自己做条件判断,以上问题都可通过计算机来解决。

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

可以通过下图来简单了解条件语句的执行过程:

wKiom1jkba7Tga26AAAiyl4BYoU816.png-wh_50
wKiom1jkba7Tga26AAAiyl4BYoU816.png-wh_50

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

Python 编程中 if 语句用于控制程序的执行,基本形式为:

代码语言:javascript
复制
if 判断条件:
    执行语句……
else:
    执行语句……

其中"判断条件"成立时(为真),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句,具体例子如下:

代码语言:javascript
复制
# -*- coding: UTF-8 -*-
 
# 例1:if 基本用法
 
flag = False
name = raw_input()
if name == 'python':         # 判断变量否为'python'
    flag = True          # 条件成立时设置标志为真
    print 'welcome boss'    # 并输出欢迎信息
else:
    print name              # 条件不成立时输出变量名称
输出结果为:
>>> luren         # 输出结果

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

当判断条件为多个值时,可以使用以下形式:

代码语言:javascript
复制
if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

实例如下:

代码语言:javascript
复制
# -*- 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      # 输出结果

根据年龄判断是否成年:

代码语言:javascript
复制
age = 3
if age >= 18:
    print 'your age is', age
    print 'adult'
else:
    print 'your age is', age
    print 'teenager'

如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

代码语言:javascript
复制
#!/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      # 输出结果
代码语言:javascript
复制
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条件判断语句,如下实例:

代码语言:javascript
复制
# -*- coding: UTF-8 -*-
 
var = 100 
 
if ( var  == 100 ) : print "变量 var 的值为100" 
 
print "Good bye!" 
以上代码执行输出结果如下:
变量 var 的值为100
Good bye!

if语句嵌套例子:

根据工资决定输出内容:

代码语言:javascript
复制
#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

例如:

wKiom1jkbuGS6nFWAAAEEfaMg7Q390.png-wh_50
wKiom1jkbuGS6nFWAAAEEfaMg7Q390.png-wh_50

开场问题的具体代码实现:

1.买包子问题:

wKioL1jkbuyxxRxEAAALpYETtGk739.png-wh_50
wKioL1jkbuyxxRxEAAALpYETtGk739.png-wh_50

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

wKiom1jkbvuCn85PAAAJFZaoEBQ645.png-wh_50
wKiom1jkbvuCn85PAAAJFZaoEBQ645.png-wh_50

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

wKiom1jkbwjDgtmSAAALYfSBmAE739.png-wh_50
wKiom1jkbwjDgtmSAAALYfSBmAE739.png-wh_50

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

wKioL1jkbxeCYyj1AAAMI6k24Rc653.png-wh_50
wKioL1jkbxeCYyj1AAAMI6k24Rc653.png-wh_50

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

wKiom1jkbybDQmQIAAAJy6xeVuU024.png-wh_50
wKiom1jkbybDQmQIAAAJy6xeVuU024.png-wh_50

其它问题请同学们课后自行完成。

扩展猜数字实例:

wKioL1jkbzzykgZyAAAOJiew5dw357.png-wh_50
wKioL1jkbzzykgZyAAAOJiew5dw357.png-wh_50
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简单的语句组
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档