前言

本文主要介绍控制流程中的if条件语句,包括if...;if...else...;if...elif...elif...else...;if...if...if...else...;if嵌套等。内容如下:

1、语法:

  if    条件表达式   :

  解释:

  • if:如果,如果程序符合某种条件,就可以做什么样的事情;
  • “:”在python中,遇见“:”时要缩进
  • 条件表达式:用于判断,判断结果为True或者False
    • 比较运算:5>3,a>b等;
    • 成员运算:in/not in,如sun in sunny;
    • 逻辑运算:a>b and c<d,  a>b or a>c等;
    • 判断结果为False的情况:数字0,空字符串,空列表,空字典等。

2、if...

  输入:a的值为5,b的值为2,if判断5>2结果为True,程序执行 print(f"{a}大于{b}")

1 a = int(input("请输入a的值"))
2 b = int(input("请输入b的值"))
3 if a>b:
4 print(f"{a}大于{b}")

输出结果:

  5大于2

3、if...else...

  与上面的if语句有一点点的差别,多了一个else(否则)。当if条件不成立时,执行else。

  输入:a的值为5,b的值为6,if判断5>6结果为False,程序执行 print(f"{a}小于{b}")

a = int(input("请输入a的值"))
b = int(input("请输入b的值"))
if a>b:
print(f"{a}大于{b}")
else:
  print(f"{a}小于{b}")

输出结果:5小于6

4、完整的if表达式 if...elif...elif...elif...else...

  这样的if条件语句表达式中,程序只会执行一个分支的代码,剩下的条件都不会判断。

输入a的分数为20,程序会从a<60开始判断,结果为True,执行print(f"你的分数为:{a},评价为不及格"),下面其他的分支的都不会执行;输入a的值为67,程序还是会从a<60开始判断,结果为False,然后继续判断60<=a<70这个条件是否成立,结果为True,执行print(f"你的分数为:{a},评价为D")

a = int(input("请输入你的分数"))
if a<60:
print(f"你的分数为:{a},评价为不及格")
elif 60<=a<70:
print(f"你的分数为:{a},评价为D")
elif 70<=a<80:
print(f"你的分数为:{a},评价为C")
elif 80 <= a < 90:
print(f"你的分数为:{a},评价为B")
else:
print(f"你的分数为:{a},评价为A")

5、if...if...if...else...

  这种情况是多个if条件,程序会从第一个if开始判断。

输入分数a为30,则会判断a<60是否成立,成立时执行print(f"你的分数为:{a},评价为不及格"),然后判断50<=a<70是否成立...直到程序最后

a = int(input("请输入你的分数"))
if a<60:
print(f"你的分数为:{a},评价为不及格")
if 50<=a<70:
print(f"你的分数为:{a},评价为D")
if 30<=a<80:
print(f"你的分数为:{a},评价为C")
if 40 <= a < 90:
print(f"你的分数为:{a},评价为B")
else:
print(f"你的分数为:{a},评价为A")

输出结果:

  请输入你的分数30
  你的分数为:30,评价为不及格
  你的分数为:30,评价为C
  你的分数为:30,评价为A

注意:else与同级且最近的if配对,也就是说上面的例子中,a-30在判断40<=a<90这里是不成立的,然后还要判断40<=a<90范围外的情况,即0<=a<40,这是成立的,输出

if 40 <= a < 90:
print(f"你的分数为:{a},评价为B")
else:
print(f"你的分数为:{a},评价为A")

6、if嵌套

if嵌套就是说在某个条件后,继续进行细分判断,如下所示:

输入分数90

a = int(input("请输入你的分数"))
if 0<a<60:
print(f"你的分数为:{a},评价为不及格")
if 60<=a<100:
# print(f"你的分数为:{a},评价为及格")
if 60<=a<80:
print(f"你的分数为:{a},评价为及格,等级为差")
elif 80<=a<90:
print(f"你的分数为:{a},评价为及格,等级为中")
else:
print(f"你的分数为:{a},评价为及格,等级为优")
else:
print("你美哟,分数为0")

执行结果:

  你的分数为:90,评价为及格,等级为优

if可以不用和else配对,也可以不和elif配对。

python基础之if条件控制语句的更多相关文章

  1. Python基础2:流程控制语句 while / for循环

    [ while 循环 ] 如果要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+ ...

  2. Python基础教程,流程控制语句详解

    1.程序结构 计算机在解决问题时,分别是顺序执行所有语句.选择执行部分语句.循环执行部分语句,分别是:顺序结构.选择结构.循环结构.如下图: 很多人学习python,不知道从何学起.很多人学习pyth ...

  3. python基础-编码_if条件判断

    一.第一句Python代码 在 /home/dev/ 目录下创建 hello.py 文件,内容如下: [root@python-3 scripts]# cat hello.py #!/usr/bin/ ...

  4. 2015/9/5 Python基础(9):条件和循环

    条件语句Python中的if语句如下: if expression: expr_true_suite 其中expression可以用布尔操作符and, or 和 not实现多重判断条件.如果一个复合语 ...

  5. Python基础:06条件和循环

    1:条件表达式(三元操作符) Python 在很长的一段时间里没有条件表达式(C ? X : Y), 或称三元运算符.人们试着用 and 和 or 来模拟它, 但大多都是错误的. 根据 FAQ , 正 ...

  6. python 基础二-----数据类型和控制语句

    一.数据类型: 1)数据类型 1.整数(int) 2.浮点数(float) 3.字符串(string) 4.列表(list) 5. 元组(tuple) 6.字典(dict): key和value是一一 ...

  7. python 流程控制(条件语句)

    1,python流程控制单条件基本语句 2,python流程流程多条件控制语句 3,三元运算 1,python流程控制单条件基本语句 if 判断条件: 执行语句…… else: 执行语句…… 判断条件 ...

  8. python基础之条件循环语句

    前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语 ...

  9. Python基础——条件判断

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 到目前为止,Python基础系列的文章中的程序都是一条一条语句顺序执行的.在本章中,我会重点介绍让程序选择是否执行语 ...

随机推荐

  1. Apache DolphinScheduler 1.2.0 task 任务存储结构说明

    本文章经授权转载 Table of Contents 任务总体存储 Shell节点 SQL节点 存储过程节点 SPARK节点 MapReduce(MR)节点 Python节点 Flink节点 HTTP ...

  2. ABP vNext系列文章03---依赖注入

    一.依赖注入的类型注册 ABP的依赖注入系统是基于Microsoft的依赖注入扩展库(Microsoft.Extensions.DependencyInjection nuget包)开发的.因此,它的 ...

  3. Ceph 块存储 创建的image 映射成块设备

    将创建的volume1映射成块设备 [root@mysql-server ceph]# rbd map rbd_pool/volume1 rbd: sysfs write failed RBD ima ...

  4. OpenCV CMake VSCode Windows 平台下运行配置及其解决方案

    前言 最近在搞 计算机图形学相关的东西,有个 demo 用到了 opencv,找了 google 一圈,发现国内都没有比较好的配置和解决的办法,要不就是几年前的教程,最近正好踩坑完,其中经历了自己编译 ...

  5. spring接口多实现类,该依赖注入哪一个?

    一.问题的描述 在实际的系统应用开发中我经常会遇到这样的一类需求,相信大家在工作中也会经常遇到: 同一个系统在多个省份部署. 一个业务在北京是一种实现方式,是基于北京用户的需求. 同样的业务在上海是另 ...

  6. Spring源码-xml解析

    Spring使用SAX解析xml.SAX的全称是Simple APIs for XML,也即XML简单应用程序接口.与DOM不同,SAX提供的访问模式是一种顺序模式,这是一种快速读写XML数据的方式. ...

  7. KingbaseES例程之快速删除表数据

    概述 快速删除表中的数据 delete语句删除数据 表中的数据被删除了,但是这个数据在硬盘上的真实存储空间不会被释放. 这种删除缺点是:删除效率比较低. 这种删除优点是:支持删除部分数据,支持回滚. ...

  8. 【读书笔记】C#高级编程 第二十章 诊断

    (一)诊断概述 名称空间System.Diagnostics提供了用于跟踪.事件日志.性能测量以及代码协定的类.System.Diagnostics.Contracts名称空间中的类可以定义前提条件. ...

  9. 操作服务器的神奇工具Tmux

    Tmux 是什么? 会话与进程 命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令.用户与计算机的这种临时的交互,称为一次 ...

  10. @EqualsAndHashCode(callSuper = false) 解释

    当我们的pojo使用@Data注解时,@Data默认包含的是:@EqualsAndHashCode(callSuper = false),但是我们的pojo有继承父类,我们可能需要重新定义这个注解为: ...