python条件语句使用 if 表达式,难度不高,需要注意的是嵌套用法,以及如何设置对应的条件。

if 条件判断语句

python 语句是按固定顺序执行的,先执行前面的语句,再执行后面的语句。如果你像要程序按照你自己定制的流程执行,就需要用到流程控制的语句,最主要用到的是条件语句和循环语句。

条件语句用 if 表示,它表示当满足某个条件时,执行下面的分支代码。当条件不满足时,则跳过下面的分支代码。


image-20210907141048465

在互联网产品中,你经常能看到条件判断的场景。比如在一个 app 的登录页面中,输入用户名和密码后,程序会判断用户名和密码是否正确,如果正确,则运行用户进入登录状态。如果错误,则必须重新输入。

对应的伪代码为:

if 用户名和密码正确:
登录成功
else:
重新输入用户名和密码

if 语句的语法可以表示为:

if expression:
statement1
else:
statement2

当 expresssion 这个表达式为 True,表示条件满足,statement1 会执行;当 expression 表达式结果为 False,则跳到 statement2 执行。 else 表示在一个 if 语句中上面所有的条件均不满足时,会执行的分支。当你确定 else 时你不需要做任何事,可以省略 else:

if expression:
statement1

这里需要注意一点,在 python 中遇到冒号: 时,新的一行要缩进,表示子句。如果没有新行,而是直接把语句跟在后面,则不需要缩进:

if expression: statement1

举个例子来说明一下 if 语句的用法。当学生考试成绩高于 80 分,表示良好,否则表示一般。

score = 88
if score > 80:
print("良好")
else:
print("一般")

有时候一个 if 语句中会有多个条件判断,可以使用 elif 来分隔每一组条件。

score = 70
if score > 80:
print("良好")
elif 60 < score <= 80:
print("还行")
else:
print("不及格")

在同一个 if 语句中,只有第一个率先满足条件的分支会执行,其他的分支不会执行。在上面的例子中,学生得了 70 分,第二个条件表达式率先满足,则走第二个分支。 而在下面的例子中,如果多个条件的范围有重合,会打印什么呢?

score = 70
if score > 60:
print("不错哦")
elif 60 < score <= 80:
print("还好")
else:
print("不及格")

因为第一个条件率先满足,所以直接执行第一个分支,其他的分支都不再执行。

多个 if 表达式需要独立判断:

score = 70
if score > 60:
print("不错哦")
if 60 < score <= 80:
print("还好")
else:
print("不及格")

在这个例子中,有 2 个 if 表达式,第一个不会影响第二个的执行。。

条件语句嵌套

在一个 if 语句中可以嵌套另一个 if 语句,像俄罗斯套娃一样。它表示在满足外层 if 条件后,可以执行里面的 if 语句。但是通常提早结束 if 语句,因为当条件语句嵌套很多层之后,会影响代码的可读性。

score = 88
age = 1

if score > 80:
 print("良好")
if age < 6:
 print("神童")
else:
 print("一般")

你可能不知道的条件操作

在程序当中,经常需要判断一个字符串是否为空,最常使用的方式是:

a = ''
if not a:
print("字符串为空")
if a:

print("字符串不为空")

不管是字符串也好,还是列表、字典、集合,都可以使用同样的方式判断他们是否为空。当然你也可以使用下面的方式,但是这些都不是好的做法。

if a == '':
print("字符串为空")
if len(a) == 0:
print("字符串为空")

判断是否为 None, 用 is 判断:

if a is None:
print("a 为 None")

判断是否为 0:

if a == 0:
print("a 为 0")

python条件判断语句案例

name = ''
password = ''
if name == 'admin' and password == '123456':
   print("登录成功")
else:
   print("登录失败")

Python条件语句的用法的更多相关文章

  1. 第4课,python 条件语句if用法

    主题: 智能对话程序的设计 前言: 在编程中存在三大逻辑结构:顺序结构,分支结构(用条件语句if构成),循环结构.其中循环结构能完成,重复次数多,庞大的工作: 分支结构优势不在完成的多,但占有重要位置 ...

  2. Python —条件语句

    条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非空(null ...

  3. Python 条件语句

    Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false. Py ...

  4. Python——条件语句及其循环

    条件语句及其循环 一. 条件语句 在条件语句中可以使用以下所有的运算符: 算术运算符:+.-.*././/.%.** 关系运算符:>.<.==.<=.>=.!= 测试运算符:i ...

  5. python 条件语句和基础数据类型

    条件语句 if 条件: pass else: pass 如果1等于1,输出欢迎进入东京热,否则输出欢迎进入一本道 ==: print("欢迎进入东京热") else: print( ...

  6. (一)python条件语句和基本数据类型

    条件语句 语法一:if...else  if <条件成立>: 处理过程 else: 处理过程 语法二:if...elif...else if <条件1成立>: 处理过程1 el ...

  7. python - 条件语句/循环语句/迭代器

    条件测试:if 条件表达式python 的比较操作        所有的python对象都支持比较操作            可用于测试相等性.相对大小等            如果是复合对象,pyt ...

  8. Python条件语句

    1.简介 多个条件判断,用elif语句. 如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功: 使用 and (与)时,表示只有两个条件同时成立的情况下,判 ...

  9. 3:Python条件语句

    1.if基本语句 if 条件: 内部代码块 内部代码块 else …… print('……') 2.if支持嵌套 if 1==1: if 2==2 print(n1) print(n2) else: ...

随机推荐

  1. ASP.NET MVC之model传值view

    控制器中,我们有时会在知道用户名的情况下,再获取相关数据 例如: public ActionResult Index()        {            UserInfo Entity_Tem ...

  2. NC16649 [NOIP2005]校门外的树

    NC16649 [NOIP2005]校门外的树 题目 题目描述 某校大门外长度为 \(L\) 的马路上有一排树,每两棵相邻的树之间的间隔都是 \(1\) 米.我们可以把马路看成一个数轴,马路的一端在数 ...

  3. Halcon图片标定,使得后续图片处理过后变成与模板图片一样

    随便选择一张图片 对这张图片进行旋转矫正之后,图片就变成了一个模板图片.它的区域region位置如图所示:   当来了一张新的图片的时候,让它与region比较,与模板的位置有明显的偏差, 如图所示: ...

  4. C++多文件源程序

    一.多文件结构的源代码组织 一个C++程序开发工程(project)可以包含多个源程序文件,一个源程序文件(.cpp)可以包含多个函数.一个函数只能集中放在一个源程序文件中,不能将其定义代码拆开存放在 ...

  5. 【中国象棋人机对战】引入了AI算法,学习低代码和高代码如何混编并互相调用

    以低代码和高代码(原生JS代码)混编的方式引入了AI算法,学习如何使用表达式调用原生代码的.整个过程在众触低代码应用平台进行,适合高阶学员. AI智能级别演示 AI算法分三个等级,体现出来的智能水平不 ...

  6. DDS信号发生器加强版(双通道,发送波形的频率可控,相位可控,种类可控)

    目的:设计一个DDS,可以输出两个波形,输出的波形的周期可以修改,相位可以修改,种类也可以修改 输入:clk,reset,一个控制T的按键,一个控制相位的按键,一个控制波形种类的按键. 思路:双通道- ...

  7. 吐泡泡_via牛客网

    题目 链接:https://ac.nowcoder.com/acm/contest/28537/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言 ...

  8. SpringBoot中Tomcat和SpringMVC整合源码分析

    概述 ​ SpringBoot中集成官方的第三方组件是通过在POM文件中添加组件的starter的Maven依赖来完成的.添加相关的Maven依赖之后,会引入具体的jar包,在SpringBoot启动 ...

  9. BufferedWriter字符缓冲输出流和BufferedReader字符缓冲输入流

    package com.yang.Test.BufferedStudy; import java.io.BufferedWriter; import java.io.FileWriter; impor ...

  10. 浅谈 exgcd

    众所周知欧几里得算法是: \[\gcd(a,b)=\gcd(b,a\bmod \,b) \] 也叫辗转相除法. 拓展欧几里得算法(exgcd),可以用来找到形如 \(ax+by=\gcd(a,b)\) ...