一、if语句判断的定义

如果 条件满足,才能做某件事情,

如果 条件不满足,就做另外一件事情,或者什么也不做

正是因为有了判断,才使得程序世界丰富多彩,充满变化!

判断语句 又被称为 “分支语句”,正是因为有了判断,才让程序有了很多的分支

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

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

if 判断条件:

执行语句……

else:

执行语句……

例子:如果天气晴朗,我们去室外散步;否则,继续宅在家里

我们要判断出语句中的关键字然后基于此编写脚本

"""

如果 天气晴朗

去室外散步

否则

继续宅在家里

"""

state = '阴天'

if state == '晴朗':

print('室外散步!')

else:

print('继续宅在家里。')

二、if语句的比较运算符

以下假设变量a为10,变量b为20:

运算符

描述

实例

==

等于 - 比较对象是否相等

(a == b) 返回 False。

!=

不等于 - 比较两个对象是否不相等

(a != b) 返回 true.

<>

不等于 - 比较两个对象是否不相等。python3 已废弃。

(a <> b) 返回 true。这个运算符类似 != 。

>

大于 - 返回x是否大于y

(a > b) 返回 False。

<

小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。

(a < b) 返回 true。

>=

大于等于 - 返回x是否大于等于y。

(a >= b) 返回 False。

<=

小于等于 - 返回x是否小于等于y。

(a <= b) 返回 true。

例子

1、算数运算符在条件表达式中的应用:ATM/客服

key = 1

if key == 1:

print('存款')

else:

print('取款')

#当数值等于1时存款,否则取款

2、!=的使用

if key != 1:

print('不存款')

else:

print('存款')

#当数值不等于1时不存款,否则取款

3、>=的使用

age = 18

if age >= 18:

print('允许进入网吧')

else:

print('未成年人禁止进入!')

#当年龄大于18可以进网吧,否则不行

三、if语句的逻辑运算符

Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:

运算符

逻辑表达式

描述

实例

and

x and y

布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。

(a and b) 返回 20。

or

x or y

布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。

(a or b) 返回 10。

not

not x

布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

not(a and b) 返回 False

注意:if 有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于 >(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。

例子

当年龄大于等于18岁,或有100块钱并且有身份证就可进入,否则不得进入

# 逻辑运算符:and/or

age = 16

money = 100

id_card = True

if (age >= 18 or money >= 100) and id_card:

print('欢迎光临!')

else:

print('抱歉')

四、if语句的成员运算符

除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。

运算符

描述

实例

in

如果在指定的序列中找到值返回 True,否则返回 False。

x 在 y 序列中 , 如果 x 在 y 序列中返回 True。

not in

如果在指定的序列中没有找到值返回 True,否则返回 False。

x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

例子

1、成员运算符:in/not in

当names列表中包含小写的Kety,就输出存在,否则不存在

names = ['Job','Bili','Laoyew','kety']

name = 'Kety'

if name.lower() in names:

print('存在')

else:

print('不存在')

当names列表中不包含大写的Kety,就输出不存在,否则存在

if name.upper() not in names:

print('不存在')

else:

print('存在')

五、小练习

1、检查是否相等

num = 1

if num == 1:

print('ok')

else:

print('no')

2、检查是否不相等

num1 = 2

if num1 != 1:

print('no')

else:

print('yes')

3、比较数字

num2 = 3

num3 = 4

if num2 <= num3:

print('ok')

else:

print('no')

4、检查多个条件

num4 = 5

num5 = 6

num6 = 7

if (num4 >= 5 or num5 >= 6) and num6 ==7:

print ('ok')

else:

print('no')

5、检查特定的值是否包含在列表中

num7 = ['a','b','c']

num8 = ['D']

if num8 in num7:

print('yes')

else:

print('no')

if str(num8).lower() in num7:

print('yes')

else:

print('no')

6、检查特定的值是否不包含在列表中

if str(num8).upper() not in num7:

print('no')

else:

print('yes')

六、if语句结构

1、简单的if语句

# 简单的if

age = 0

if age ==0:

print('婴儿')

print()

注意:Python 区分语句块采用的是缩进规则。具有相同缩进的代码被视是同一结构的代码块,上面的2,3行 print 语句就构成一个代码块( 但不包括第6行的 print 语句),他们都属于 if 下的语句块。

如果 age大于等于18,就会执行第 2 和 3 行的 if 语句块。

缩进要严格按照 Python 的习惯写法:4个空格,或者使用 Tab,不要混合 Tab 和空格,否则很容易造成因为缩进而引起的语法错误。

(一)if...else... 语句

if...else... 语句,当 if 的条件为 True 时执行 if 下的语句块,否则执行 else 下语句块。

if...else... 语句格式如下:

if <条件>:

【if 的语句块】

else:

【else 的语句块】

释:条件为 True 时执行【if的语句块】,否则执行【else的语句块】

注意:if 和 else 语句以及各自的缩进部分共同是一个 完整的代码块

例子

# if-else

age = 3

if age >= 2 and age <= 4:

print('蹒跚学步')

else:

print('婴儿')

(二)if...elif...else... 语句

在开发中,使用 if 可以 判断条件,使用 else 可以处理 条件不成立 的情况

如果希望 再增加一些条件,条件不同,需要执行的代码也不同 时,就可以使用 elif

语法格式如下:

if 条件1:

条件1满足执行的代码

……

elif 条件2:

条件2满足时,执行的代码

……

elif 条件3:

条件3满足时,执行的代码

……

else:

以上条件都不满足时,执行的代码

……

注意:elif 和 else 都必须和 if 联合使用,而不能单独使用

可以将 if、 elif 和 else 以及各自缩进的代码,看成一个 完整的代码块

例子:

# if-elif-else

age = 3

if age ==0:

print('婴儿')

elif age >= 2 and age <= 4:

print('蹒跚学步')

elif age > 4 and age <=5:

print('上幼儿园')

else:

print('其他')

(三)if 的嵌套

**elif 的应用场景是:同时 判断 多个条件,所有的条件是 平级 的**

在开发中,使用 if 进行条件判断,如果希望 在条件成立的执行语句中 再 增加条件判断,就可以使用 if 的嵌套

if 的嵌套 的应用场景就是:在之前条件满足的前提下,再增加额外的判断

if 的嵌套 的语法格式,除了缩进之外 和之前的没有区别

语法格式如下:

if 条件 1:

条件 1 满足执行的代码

……

if 条件 1 基础上的条件 2:

条件 2 满足时,执行的代码

……

# 条件 2 不满足的处理

else:

条件 2 不满足时,执行的代码

# 条件 1 不满足的处理

else:

条件1 不满足时,执行的代码

……

例子

1、当百米赛跑时间小于等于10秒时,男女分组进入决赛

second = 6

gender = '男'

if second <= 10:

print('进入决赛')

if gender == '男':

print('进入男子组')

elif gender == '女':

print('进入女子组')

else:

print('重在参与,杭氧体育精神')

2、if 的嵌套 演练 —— 火车站安检

需求

定义布尔型变量 has_ticket 表示是否有车票

定义整型变量 knife_length 表示刀的长度,单位:厘米

首先检查是否有车票,如果有,才允许进行 安检

安检时,需要检查刀的长度,判断是否超过 20 厘米

如果超过 20 厘米,提示刀的长度,不允许上车

如果不超过 20 厘米,安检通过

如果没有车票,不允许进门

# 定义布尔型变量 has_ticket 表示是否有车票

has_ticket = True

# 定义整数型变量 knife_length 表示刀的长度,单位:厘米

knife_length = 20

# 首先检查是否有车票,如果有,才允许进行 安检

if has_ticket:

print("有车票,可以开始安检...")

# 安检时,需要检查刀的长度,判断是否超过 20 厘米

# 如果超过 20 厘米,提示刀的长度,不允许上车

if knife_length >= 20:

print("不允许携带 %d 厘米长的刀上车" % knife_length)

# 如果不超过 20 厘米,安检通过

else:

print("安检通过,祝您旅途愉快……")

# 如果没有车票,不允许进门

else:

print("大哥,您要先买票啊")

六、小练习(2)

1、 求100以内数字的偶数之和与奇数之和

j = list(range(1,101,2))

print(sum(j))

print(sum(range(2,101,2)))

2、输出100以内7的倍数的数字

for i in range(1,101):

if i%7 == 0:

print(i,end=' ')

3、打印直角三角形,奇数用*号代替,偶数用#号代替

xgp = list(range(1,10,2))

wsd = list(range(2,10,2))

for i in range(1,10):

for j in range(i+1):

if j in xgp:

print("*",end='')

elif j in wsd:

print("#",end='')

print()

4、

查看fruits列表中是否有apper

# 定义列表

fruits = ['apper','banana','pear','orange']

fruit = 'apper'

if fruit in fruits:

print('存在')

if嵌套

for f in fruits:

if f == 'pear':

print('做梨罐头')

elif f == 'orange':

print('做橘子罐头')

elif f == 'apple':

print('做苹果罐头')

else:

print('做沙拉')

#fruits = []

fruits = ['apple','banana','pear','orange']

print(fruits)

if len(fruits) == 0:

print('没有水果')

else:

print('开始做水果罐头了')

for fruit in fruits:

print(fruit,end=" ")

python中if语句and和or用法_python中if语句的使用(比较、逻辑、成员、运算符,语句结构)...相关推荐

  1. python中os.path.join()的循环用法_Python中.join()和os.path.join()两个函数的用法详解

    Python中有.join()和os.path.join()两个函数,具体作用如下: . join():    连接字符串数组.将字符串.元组.列表中的元素以指定的字符(分隔符)连接生成一个新的字符串 ...

  2. python中if语句and和or用法_Python从入门到精通——一文读懂if语句用法

    1.if语句概述 if语句能够进行条件测试,并依据一定的条件进行具体的操作 2.if语句条件测试 if语句的核心是一个值为True或False的表达式,这种表达式称为条件测试.Python根据条件测试 ...

  3. python中os.path.join()的循环用法_python中使用os.path.join()

    os.path.join的详细解释请移步os.path模块 在使用的过程中,我使用如下代码: import os path = "F:/gts/gtsdate/" b = os.p ...

  4. python中if else语句用法_python中if及if-else如何使用

    if 结构 if 结构允许程序做出选择,并根据不同的情况执行不同的操作 基本用法 比较运算符 根据 PEP 8 标准,比较运算符两侧应该各有一个空格,比如:5 == 3. PEP8 标准 ==(相等) ...

  5. python中for in range循环的用法_Python入门第7课,循环结构学习,for语句range函数的3种用法...

    上课前,大陈带领学生们一起回顾和梳理前面学过的知识. 体验课,Python与人工智能初体验. 第1课,输出语句及赋值语句. 第2课,输入语句学习. 第3课.第4课,学习条件控制if语句. 第5课.第6 ...

  6. python中print的用法_Python中print函数简单使用总结

    Python中print函数简单使用总结 print函数是Python的入门,每一个学习python的人都绕不开这个函数,下面介绍一下这个函数的用法. 打开电脑,选择python软件,下面选择pyth ...

  7. python map用法_Python中 map()函数的用法详解

    python map()函数问题 使用map()函数生成一个值D但是检测D的长度时,只能测一次,一次之后D似不知道你的dataSet 是什么数据,是否是从数据库取出来的结果游标, 如果是的 那么dat ...

  8. python中try的用法_python中的 try...except...finally 的用法

    python中的 try...except...finally 的用法 author:headsen chen date:2018-04-09 16:22:11 try, except, finall ...

  9. python中type用法_Python中type的用法

    (TOC)描述python类型的函数有两个用法,当只有一个参数,它将返回对象的类型.当有三个参数,返回一个类对象.语法类型(对象)类型(名称.基地.dict)使用一个参数类型(对象)返回一个对象的类型 ...

最新文章

  1. python索引序列_Pythonfor循环通过序列索引迭代过程解析
  2. Spring保存文件到MongoDB之GridFS支持
  3. 汇编 --- 初体验
  4. 剪映专业版PC端清理缓存与日志
  5. Kubernetes之yaml文件
  6. MYSQL IFNULL函数的使用
  7. 修改system.img的大小限制
  8. C++开发的应用方向有哪些?
  9. 生成树切分matlab_机器学习——手把手教你用Python实现回归树模型
  10. 基于Caffe的人脸关键点检测实现
  11. python 求和_python中求和
  12. 联想i5无线网无法连接服务器,联想笔记本不能连接无线网的解决方法
  13. MySQL MGR 安装
  14. 第1章第17节:如何使用备注功能对内容进行注释补充 [PowerPoint精美幻灯片实战教程]
  15. uniapp onReachBottom 不触发
  16. java系统智能手表_java_智能手表开发API接口,随着移动技术的发展,许多传 - phpStudy...
  17. mysql取rownum_MySQL中的ROWNUM的实现
  18. 只网签没备案 房管局能查到吗_如何查询已网签且未备案的房产
  19. 《软件方法》第五章 自测题
  20. 华为机试--高精度整数加法

热门文章

  1. 怀孕参加计算机考试有辐射吗,电脑辐射对孕妇的影响大不大 会对胎儿造成什么影响...
  2. python telnetlib详解 执行循环命令_Python的Telnetlib read_until'#'或'&GT;',多发串的决心?...
  3. 2022还在使用Mysql进行数据检索?ElasticSearch自定义扩展词库完成检索
  4. java: 找不到符号 符号: 方法 setOperation(java.lang.String) 位置: 类型为.......
  5. 【大白话系列】带你进入网络的世界【都说计网难,一篇即可激发你的兴趣】
  6. 流控组件Sentinel核心注解@SentinelResource中的参数fallback和blockHandler的使用方式
  7. 表达式封装和模型驱动封装的区别
  8. C#——Circle(圆)类
  9. BZOJ 2733 | 洛谷 P3224 [HNOI2012]永无乡
  10. The Preliminary Contest for ICPC China Nanchang National Invitational