python中if语句的使用(比较逻辑成员运算符,语句结构)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中if语句的使用(比较逻辑成员运算符,语句结构)相关的知识,希望对你有一定的参考价值。
一、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语句的使用(比较逻辑成员运算符,语句结构)的主要内容,如果未能解决你的问题,请参考以下文章
python中的条件语句,分支语句以及逻辑运算符和比较运算符