python-if语句

简单的if语句

含义

Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。

可以通过下图来简单了解条件语句的执行过程:

在if语句中,我们设定一个条件,该条件通常为一个表达式,其结果被解释为布尔型(True或False)。这个条件用于判断某个情况是否成立,如果条件满足,即表达式的结果为True,那么程序就会执行if语句块内的代码。这通常代表“条件符合,继续执行后续操作”。

简而言之,if语句的流程是:先设定条件,条件满足(即True)则执行if语句块内的代码,不满足则跳过,继续执行后续代码。这是程序实现条件逻辑和智能化决策的基本方式。

if 语法格式

if 条件表达式:

        条件成立执行的代码块

注意:

  • 1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
  • 2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
  • 3、Python中的缩进可以使用空格或者Tab键,但同一个代码块中的缩进量必须一致,且一般情况下建议使用4个空格作为缩进量(一个Tab键的默认宽度也为4个空格)

例:检查年龄是否超过60岁,超过60岁,可以退休

age = 72
if age > 60:
    print("年龄超过60,可以退休")
print("检查完毕")

输出结果:

在这个例子中,因为age的值为72,大于60,所以程序会输出:

年龄超过60,可以退休

检查完毕

如果我们将age的值改为55,则不会执行if语句块内的代码,因此不会有任何输出

例:

age = 55
if age > 60:
    print("年龄超过60,可以退休")
print("检查完毕")

结果

Python中的运算符

比较运算符

Python中的比较运算符用于比较两个值或者表达式之间的关系并根据比较结果返回布尔值(True或Flase)。这些运算符在条件语句(如if语句),循环控制以及数据筛选等场景中非常有用。

a=10  b=20

运算符描述实例
==等于 - 比较对象是否相等(a == b) 返回 False。
!=不等于 - 比较两个对象是否不相等(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。

a = 10
b = 20
print(a==b)
print(a!=b)
print(a>b)
print(a<b)
print(a>=b)
print(a<=b)

逻辑运算符

通过使用逻辑运算符,开发者可以将多个条件表达式组合起来,形成复杂的条件判断语句。这些语句能够精确的描述程序在不同条件下的行为,确保在慢则的特定条件时执行相应的代码块,而在不满足条件时,则跳过这些代码块或执行其他备选路径。
逻辑运算符的使用不仅提高了代码的可选性,还使得程序的逻辑结构更加清晰,易于理解和维护。此外,它们还支持短路行为,这在一定的程度上提高了程序的执行效率,避免不必要的计算和操作

and(且)

当所有条件为True时,整个表达式为True,否则为False

print(True and True)
print(True and False)
print(False and True)
print(False and False)

or(或)

只要有一个条件为True,整个表达式为True,否则为False

print(True or True)
print(True or False)
print(False or True)
print(False or False)

not(非)

用于反转条件的结果,如果条件为True,则结果为False;如果条件为False,则结果为True

print(not True)
print(not False)

if-else

格式:

if 条件表达式:

        条件成立的代码块

else:

        条件不成立的代码块

例:检查一个人的年龄并根据其年龄判断是否成年,来输出相应的消息

# 定义一个变量
age = int(input("请输入年龄:"))
# 检查一个人的年龄是否大于或等于18岁,如果是的,输出“你已经成年了”
if age >= 18:
    print(f"你{age}岁了,所以已经成年了")
# 检查一个人的年龄是否大于或等于18岁,如果假的,输出“所以还没有成年”
else:
    print(f"你才{age}岁了,所以还没有成年")

结果:

三元表达式

通过允许在一行代码中完成条件判断和值的选择,显著减少了需要缩写的代码量。这种简洁性,使得代码更加的紧凑,减少了冗余,并且提高了可读性(在适当的情况下)。当处理简单的条件逻辑时,使用三元表达式可以使代码更加清晰明了。

格式

真结果 if 条件表达式 else 为假结果

上述例子举例:

age = int(input("请输入年龄:"))
print(f"你{age}岁了,所以已经成年了") if age >= 18 else print(f"你才{age}岁了,所以还没有成年")

结果

if-elif

在Python中,if_else结构用于满足在两种情况下选择(二选一),而if_elif结构则允许在多个条件中进行选择,只有第一个满足条件的分支会被执行(多选一)。

格式 

if 条件表达式1:

        条件1成立执行的代码

elif 条件表达式2:

        条件2成立执行的代码

elif 条件表达式3:

        条件3成立执行的代码

注意:在if_elif结构中,elif语句的数量没有限制,可以根据需要添加多个elif语句来检查多个条件,从而更加灵活地处理复杂的逻辑判断。

需求:检查天气情况,并根据结果输出相应的穿衣建议

#定义一个变量
weather = input("请输入今日天气情况(sunny,cloudy,rainy,snowy):")
#如果输入的天气是sunny,则输出今日阳光明媚,建议穿短袖和短裤。
if weather == 'sunny':
    print("今日阳光明媚,建议穿短袖和短裤。")
# 如果输入的天气是cloudy,则输出今日多云,建议穿轻便的外套和长裤。
elif weather == 'cloudy':
    print("今日多云,建议穿轻便的外套和长裤。")
# 如果输入的天气是rainy,则输出今天下雨,请记得带伞,并穿上防水的外套和鞋子。
elif weather == 'rainy':
    print("今天下雨,请记得带伞,并穿上防水的外套和鞋子。")
# 如果输入的天气是snowy,则输出今天下雪,请穿上厚厚的羽绒服和防滑的靴子。
elif weather == 'snowy':
    print("今天下雪,请穿上厚厚的羽绒服和防滑的靴子。")

输出结果

if-elif-else

格式 

if 条件表达式1:

        条件1成立执行的代码

elif 条件表达式2:

        条件2成立执行的代码

elif 条件表达式3:

        条件3成立执行的代码

......

else:

        所有条件都不成立执行的代码

注意:else语句在if-elif-else结构中充当分支,用于处理

#定义一个变量
weather = input("请输入今日天气情况(sunny,cloudy,rainy,snowy):")
#如果输入的天气是sunny,则输出今日阳光明媚,建议穿短袖和短裤。
if weather == 'sunny':
    print("今日阳光明媚,建议穿短袖和短裤。")
# 如果输入的天气是cloudy,则输出今日多云,建议穿轻便的外套和长裤。
elif weather == 'cloudy':
    print("今日多云,建议穿轻便的外套和长裤。")
# 如果输入的天气是rainy,则输出今天下雨,请记得带伞,并穿上防水的外套和鞋子。
elif weather == 'rainy':
    print("今天下雨,请记得带伞,并穿上防水的外套和鞋子。")
# 如果输入的天气是snowy,则输出今天下雪,请穿上厚厚的羽绒服和防滑的靴子。
elif weather == 'snowy':
    print("今天下雪,请穿上厚厚的羽绒服和防滑的靴子。")
else:
    print("无法识别天气")

结果

if嵌套

指在一个if语句的代码块内部再含另一个或多个if语句

应用场景

在之前条件满足的前提下,再增加额外的判断。

需求:检查学生的成绩和出勤率以决定是否获得奖学金

#定义一个整型变量保存学生成绩
score = int(input("请输入学生成绩:"))
#定义一个整型变量保存学生出勤率(百分比)
attendance = int(input("请输入学生的出勤率:"))
#首先检查成绩是否满足基本要求
if score>= 80:
    print("学生成绩达到基本要求")
    #在成绩满足时,再检查出勤率
    if attendance >= 90 :#内层if判断
        print("学生出勤率也很高,获得奖学金")
    else:
        print("学生出勤率不足,无法获得奖学金")
else:
    print("学生成绩未达到要求,无法获得奖学金")

结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值