Python中的 if 语句及使用方法
作者:西岸贤 发布时间:2022-12-19 16:35:10
前言:
本文的主要内容是介绍Python中 if 语句及其使用,包括条件测试、if -else 语句、if -elif-else 语句以及使用 if 语句处理列表操作,文中附有代码以及相应的运行结果辅助理解。
一、 条件测试
每条 if 语句的核心都是一个值为True
或False
的表达式,这种表达式被称为条件测试。Python根据条件测试的值为True还是False
来决定是否执行 if 语句中的代码。如果条件测试的值为True
,就执行紧跟在 if 语句后面的代码;如果值为False,Python就忽略这些代码。
1.比较字符串相等或不相等
下面是条件测试检查变量的值与特定值是否相等/不相等的例子。
fruit = 'apple'
print('1.' + str(fruit == 'apple')) #判断是否相等
print('2.' + str(fruit == 'banana'))
print('3.' + str(fruit != 'apple')) #判断是否不相等
print('4.' + str(fruit != 'banana'))
输出结果如下图所示:
由上面的输出结果可知,在比较的过程中,如果与给定的值相等,输出为True
,不相等则输出为False
。如果在比较字符串时忽略大小写,可使用函数lower()
将字符串全都转化为小写再比较。
2.比较数字
数字的比较与字符串的比较类似,除了相等(==) 和不相等(!=),还有大于(>)、大于等于 (>=)、小于 (< )和小于等于(<=)。
下面是一个数字比较的例子:
num1 = 20
num2 = 30
print('1.' + str(num1 == num2))
print('2.' + str(num1 != num2))
print('3.' + str(num1 >= num2))
print('4.' + str(num1 <= num2))
输出结果如下图所示:
3.检查多个条件
有时候需要同时检查多个条件,在几个条件都为True时才执行相应的操作,或者只要求多个条件中的一个条件为True时就执行相应的操作,在这些情况下,关键字and和or可以帮助我们轻松实现。
下面是检查多个条件的例子:
num1 = 20
num2 = 30
print('1.' + str(num1 >= 15 and num2 >= 15))
print('2.' + str(num1 >= 25 and num2 >= 25))
print('3.' + str(num1 >= 25 or num2 >= 25))
print('4.' + str(num1 >= 35 or num2 >= 35))
输出结果如下图所示:
4.检查特定值是否在列表中
有时候,执行操作前需要检查列表中是否包含特定的值,要判断特定的值是否已包含在列表中,可使用关键字in。
下面是检查特定值是否在列表中的例子:
fruits = ['grape', 'apple', 'banana', 'orange', 'pear']
print('1.' + str('apple' in fruits))
print('2.' + str('mango' in fruits))
print('3.' + str('banana' not in fruits))
print('4.' + str('watermelon' not in fruits))
输出结果如下图所示:
二、if 语句
弄懂了上面介绍的条件测试后,就可以开始编写if语句了。
1.简单的if语句
if语句例子:
num = 25
if num >= 20:
print('The number is over '+str(num)+'.')
if num < 20:
print('The number is under ' + str(num) + '.')
if语句和for循环类似,在if语句中需要执行的代码要进行缩进。
输出结果如下图所示:
2. if-else 语句
上面的例子写了两个if语句,其可以由一个if-else 语句代替:
num = 25
if num >= 20:
print('The number is over '+str(num)+'.')
else:
print('The number is under ' + str(num) + '.')
输出结果与上面的例子相同。
3. if-elif-else 语句
经常需要检查超过两个的情形,为此可使用Python
提供的if-elif-else
语句,中间的 elif 语句的数量不限,但 if 语句和 else 语句只能各有一个。
if-elif-else 语句的例子:
age = 13
if age <= 3:
print('The age under 3 is free.')
elif age <= 12:
print('The age between 3 and 12 is half price.')
else:
print('The age over 12 is full price.')
输出结果如下图所示:
三、使用 if 语句处理列表
在编程中,结合使用 if 语句和列表可以高效的完成一些任务,当然,与列表配合使用的还有for循环。
1.使用 if 语句检查列表中的特殊元素
之所以使用 if 语句检查列表中的特殊元素,是因为这些特殊元素与其他元素对应的输出不同。
下面是使用 if 语句检查列表中的特殊元素的例子:
fruits = ['grapes', 'apples', 'bananas', 'oranges', 'pears']
for fruit in fruits:
if fruit == 'apples':
print('Sorry, we are out of apples right now.')
else:
print(fruit.title() + ' are available.')
输出结果如下图所示:
由上面的输出结果可以看到,元素apples对应的输出与其他元素的输出不一致,这也正是if 语句的作用所在。
2.检查列表是否为空
一般情况下,在操作列表前检查列表是否为空很重要,因为一切操作是基于列表非空进行的。
下面是检查列表是否为空的例子:
fruits = []
if fruits:
for fruit in fruits:
if fruit == 'apples':
print('Sorry, we are out of apples right now.')
else:
print(fruit.title() + ' are available.')
else:
print('The list is empty.')
输出结果如下图所示:
3.使用多个列表
我们买东西时会自己先列一个清单,然后商店也有自己的货物清单,当你清单上的商品也在商店的货物清单上,你可以购得该商品,否则不行。
下面是一个使用多个列表进行操作的例子:
fruits_available = ['grapes', 'apples', 'bananas', 'oranges', 'pears']
fruits_want = ['mangoes', 'apples', 'bananas', 'watermelons', 'pears']
for fruit in fruits_want:
if fruit in fruits_available:
print('We have ' + fruit +'.')
else:
print("Sorry, we don't have " + fruit +'.')
print('Check complete!')
输出结果如下图所示:
由输出结果,我们就可以知道哪些商品自己在该店铺内可以买到,哪些买不到。
来源:https://blog.csdn.net/weixin_42570192/article/details/123611484


猜你喜欢
- 本文实例讲述了JS创建对象的写法。分享给大家供大家参考,具体如下:写法1:<script>var database = func
- 其实我之前已经有文章详细解释了页校验和:How to tell if the IO subsystem is causing corrupt
- 1.忍受 * 第一种解决办法,很简单,无他,不管他,没有读到也没事。这时业务不需要任何改造,你好,我好,她也好~如果业务对于数据一致性要求不高
- 近期接手越来越多的东西,发布和运维的工作相当机械,加上频率还蛮高,导致时间浪费还是优点多。修复bug什么的,测试,提交版本库(2分钟),ss
- 最近几个不错网站被封,让人感觉很不爽,现在既不方便用,也不方便学习参考。正好想到曾经“截图”的事情,其实我认为互联网产品还有个特点,更新换代
- 本文所述为C#实现的Oracle数据库操作类,可执行超多常用的Oracle数据库操作,包含了基础数据库连接、关闭连接、输出记录集、执行Sql
- 常见的 Python 文件后缀有:py、pyc 、pyo、 pyi、pyw、 pyd、 pyx 等。本文只介绍相对常见的一些后缀名,至于一些
- 近日一直在折腾vps ,刚刚碰到在搬移wordpress过程中导入数据库的时候。碰到了 #1062 – Duplicate entry
- 我们准备如下两个表,并插入数据。#分类CREATE TABLE IF NOT EXISTS `type` (`id` INT(10) UNS
- 对于vue.js中的this.emit的理解:this.emit(‘increment1',”这个位子是可以加参数的”);其实它的作
- 前端时间智能信息处理实训,我选择的课题为身份证号码识别,对中华人民共和国公民身份证进行识别,提取并识别其中的身份证号码,将身份证号码识别为字
- 因为最近在做文本检测相关,想试着用用百度的paddle框架。1、安装Anaconda3官网下载安装包直接运行安装,然后新建python3.7
- 本文实例讲述了bootstrap-table后端分页功能。分享给大家供大家参考,具体如下:使用bootstrap-table实现后台分页插件
- 更改主题File → Settings → Appearance & Behavior → Appearance → Theme结果
- 集成 FCKEditor v2.6(当前为最新版本)的基本步骤如下:1. 下载FCKeditor 2.6 基本文件(Main Code)。将
- SQLserver 2014 AlwaysOn增强了原有的数据库镜像功能,使得先前的单一数据库故障转移变成以组(多个数据)为单位的故障转移。
- 1.前言开发中,[]byte类型和string类型需要互相转换的场景并不少见,直接的想法是像下面这样进行强制类型转换:a := "
- 在Python 中使用pip指令安装第三方库
- 上一文写了如何从代理服务网站提取 IP,本文就讲解如何存储 IP,毕竟代理池还是要有一定量的 IP 数量才行。存储的方式有很多,直接一点的可
- 形参可以设置参数默认值,设置遵循从右至左原则例如:fun(x=0,y=1),fun(x,y=1),但不可以是fun(x=1,y)形参设置可以