商城类网站建设步骤,wordpress官方插件,网站建设奕网情深,站点推广名词解释文章目录前言一. python条件语句的介绍1.1 什么是条件语句1.2 条件语句的语法1.3 关于内置函数bool()二. 分支语句之单分支三. 多分支语句3.1 二分支语句3.2 多分支语句3.3 嵌套循环总结前言 #x1f3e0;个人主页#xff1a;欢迎访问 沐风晓月的博客 #x1f9d1;个人简介个人主页欢迎访问 沐风晓月的博客 个人简介大家好我是沐风晓月毕业于双一流院校计算机专业是一名热爱分享的阿里云社区专家博主。 我喜欢探索新技术研究创新应用以实战经验为主总结并分享我在学习和工作中的心得体会。 座右铭先努力成长自己再帮助更多的人和我一起努力让生活更加美好吧 欢迎大家这里是我的CSDN博客一个分享知识的平台。 如果你也热爱技术想了解最新的IT趋势想获取实用的学习资料欢迎来访三连支持有问题私信我哦让我们一起探索无限可能 一. python条件语句的介绍
1.1 什么是条件语句
Python的条件语句是一种编程结构用于根据条件的真假来控制程序执行的流程。它们通常用于对特定条件执行不同的代码块。
python中为什么会有条件语句其实编程语言和我们用的汉语英语异曲同当一种表达满足不了需求的时候肯定会考虑用其他的方式来表述。
比如我们常见的逻辑运算符
如比较运算符例如等于不等于大于小于等和布尔运算符例如与、或、非等。
一旦出现这些运算符的时候代表可能有不同的选择比如大于的时候怎么办小于的时候又该怎么办等。
而条件语句就是用来承接不同条件下执行不同代码快的设定。
例如当满足某个条件时程序可以执行一段代码否则可以执行另一段代码。这使得程序可以根据不同的情况采取不同的行动从而实现更加智能和适应性的功能。
Python中最常见的条件语句是if语句它通常由if、elif和else关键字组成。if语句用于测试一个条件如果条件为真就执行紧跟在它后面的代码块否则执行elif或者else语句块。通过这些条件语句Python程序可以在不同的情况下执行不同的代码从而实现更加灵活和智能的程序控制。
Python中有两种条件语句if语句和if…else语句
1.2 条件语句的语法
if语句的语法如下
if 条件:执行语句1执行语句2...
如果条件成立则执行相应的语句块。如果条件不成立则跳过语句块并继续执行程序。
if…else语句的语法如下
if 条件:执行语句1执行语句2...
else:执行语句3执行语句4...
如果条件成立则执行第一个语句块。如果条件不成立则执行第二个语句块。
1.3 关于内置函数bool()
Python一切皆对象所有对象都有一个布尔值想要获得布尔值需要一个内置函数bool()
bool()函数用于将给定的值转换为布尔值如果值为True则返回True否则返回False。
在Python中有许多值可以被解释为False如数字0、空字符串、空列表、空字典和None等。除此之外所有其他值都被解释为True。
例如 以下对象的布尔值为False
False数值0None空字符串空列表空元组空字典空集合
我们来测试下看看
#测试对象的布尔值
print(bool(False))
print(bool(0))
print(bool(0.0))
print(bool(None))
print(bool())
print(bool([])) #空列表
print(bool(())) #空元祖
print(bool(tuple()))#空元组
print(bool(dict())) #空字典
print(bool(set())) #空元组
执行的结果全部为 false
其他关于boo()的用法
# 布尔值为 True
print(bool(1)) # True
print(bool(hello)) # True
print(bool([1, 2])) # True# 布尔值为 False
print(bool(0)) # False
print(bool()) # False
print(bool([])) # False
print(bool(None)) # False
在上面的代码案例中我们传递了不同类型的值到bool()函数中并打印了函数的返回值。
我们可以看到在第一个和第二个打印语句中bool()函数返回True因为它们是非空的整数和字符串。
在第三个打印语句中bool()函数返回True因为它的参数是非空列表。
在后面的打印语句中bool()函数返回False因为它们的参数是可以被解释为False的值例如空字符串、空列表、数字0和None。
二. 分支语句之单分支
Python的单分支语句是if语句的最基本形式它的语法如下
if expression:statement(s)
其中expression是一个表达式它的值会被解释为True或False。如果expression的值为True则执行statement(s)否则跳过这些语句.
需要注意以下几点 在if语句中expression后面必须加上冒号:否则会报语法错误。 statement(s)必须缩进一个固定数量的空格或制表符通常是4个空格或1个制表符。这个缩进是必需的因为它表明哪些语句属于if语句的范围内。如果不缩进或缩进不正确程序将无法执行或执行错误的代码块。 expression的结果必须是布尔值True或False。如果表达式的结果是其他类型的值例如整数或字符串Python会自动将其转换为布尔值。通常情况下非零数字和非空字符串会被解释为True而零和空字符串会被解释为False。
案例一 写一个单分支语句判断是否年满18岁
age 18
if age 18:print(你已经成年了可以去网吧)
注释 在这个例子中age的值为18所以age 18表达式的结果为True。因此print()函数会被执行并输出一条消息。如果age的值小于18print()函数将不会被执行因为if语句的条件不满足。
案例二 写一个简易取款程序判断取款余额是否充足
money1000 #余额
sint(input(请输入取款金额))
#判断余额是否充足
if moneys:moneymoney-sprint(取款成功余额为,money)注释 首先我们定义了一个名为money的变量并给它赋值1000。接着我们使用input()函数获取用户输入的取款金额并将其转换为整数类型使用int()函数并赋值给s变量。
在代码的下一行我们使用注释来解释代码的作用。注释以#字符开头表示该行后面的内容是注释而不是Python代码。注释用于帮助程序员理解代码的作用和设计思路它们不会被Python解释器执行。
在注释后面我们使用if语句来判断余额是否足够。如果money的值大于或等于s则执行if语句后面的代码块将s从money中减去并打印一条消息显示取款成功和剩余的余额。否则如果money的值小于sif语句后面的代码块将被跳过不执行任何操作。
注意在if语句后面的代码块中我们使用了print()函数来输出一条包含余额的消息。消息包含一个字符串和一个变量money我们使用逗号将它们隔开这样Python会自动将它们拼接在一起。这个技巧可以用于将字符串和变量合并成一个输出。
输出结果 但这里也出现一个问题当我们的取款金额高于了1000的时候程序会直接退出 如果你想让他有输出就需要使用多分支语句
三. 多分支语句
3.1 二分支语句
多分之语句中我们默认包含了二分支语句所谓的二分之就是只有两个分支
二分支语法如下
if condition:statementstatement
else:statementstatement
单分支和二分支最大的不同就是二分支语句多了个else:
我们把上面的简易取款程序再次优化下
money 1000 # 余额
s int(input(请输入取款金额))
if money s:money money - sprint(取款成功余额为, money)
else:print(余额不足取款失败)
在这个代码中我们在if语句后面添加了一个else子句。
如果if语句的条件不满足即余额小于取款金额则执行else后面的代码块打印一条余额不足的消息。
如果if语句的条件满足则跳过else子句的代码块直接执行if语句后面的代码块。
这样我们就用一个二分支语句处理了两种情况余额充足和余额不足。
我们还可以利用二分支语句更容易的来判断奇偶性
#从键盘录入一个整数判断奇数还是偶数
numint(input(请输入一个整数 ))
if num%20:print(num,是一个偶数)else:print(num,是一个奇数)在上面的代码中首先我们使用input()函数从键盘获取一个整数并使用int()函数将其转换为整数类型并赋值给变量num。
接下来我们使用if语句来判断num是否为偶数。如果num可以被2整除即num % 2 0则执行if语句后面的代码块打印一条消息显示num是偶数。
否则如果num不能被2整除即num % 2 ! 0if语句后面的代码块将被跳过执行else语句后面的代码块打印一条消息显示num是奇数。
这个程序中使用了一个取模运算符%它返回除法的余数。如果num % 2的结果为0说明num可以被2整除即是一个偶数否则num不能被2整除即是一个奇数。
我们来看看测试结果
3.2 多分支语句
if多分支由if-elif-else组成其中elif相当于else if同时它可以使用多个if的嵌套。具体语法如下所示
if condition1:statement1
elif condition2:statement2
elif condition3:statement3
...
else:statementN
在上述语句中if是必须的elif和else是可选的。
condition1是一个表达式如果它的结果为True那么将执行statement1语句。如果condition1的结果为False那么将测试下一个条件condition2。
如果condition2的结果为True将执行statement2否则测试下一个条件condition3。
这个过程一直持续到找到一个条件的结果为True或者没有条件为True此时将执行else语句后面的statementN。
案例一 写一个成绩等级查询 90-100 A
80-89 B
70-79 C
60-69 D
0-59 E
num int(input(please input:))
print(num)
if num 90:print(A Class)
elif num 80:print(B Class)
elif num 70:print(C Class)
elif num 60:print(D Class)
elif num0 and num60:print(No Pass)else:print(对不起你的成绩不在有效范围内)
注释
首先我们使用input()函数从键盘获取一个整数并使用int()函数将其转换为整数类型并赋值给变量num。
接下来我们使用多分支语句来判断输入的num属于哪个成绩等级范围。
如果num大于或等于90即num 90则执行第一个条件if语句后面的代码块输出A Class。 如果num大于或等于80即num 80则执行第二个条件elif语句后面的代码块输出B Class。
依此类推如果num属于70-79的范围输出C Class
如果num属于60-69的范围输出D Class如果num属于0-59的范围输出No Pass。
最后如果num小于等于0或大于100则执行else语句后面的代码块输出一条消息显示输入的成绩不在有效范围内。
案例二增加异常判断在用户输入非规定的数值时候报出异常
在这个代码中我们其实也可以使用try… except 来捕获用户输入的无效的情况当用户输入的不是整数类型的时候就爆出 valueError异常。
我们在except块中处理这个异常并提示用户重新输入。
代码如下
try:num int(input(请输入一个有效的成绩))if num 0 or num 100:print(请输入0到100之间的整数)elif num 90:print(A Class)elif num 80:print(B Class)elif num 70:print(C Class)elif num 60:print(D Class)else:print(E Class)
except ValueError:print(输入的不是有效的整数)
这里如果用户输入的不是0到100的整数就说明后面的判断已经没有意义了所以先验证是不是0到100的整数。
也就是我们的第一个条件 我们将第一个条件if num 0 or num 100:
我们输入一个0-100之外的整数来看看 案例三 多个判断条件的应用
由于Python不支持switch语句所以多个条件判断只能用elif来实现如果判断需要多个条件需同时判断时可以
使用or 或表示两个条件有一个成立时判断条件成功使用and 与表示只有两个条件同时成立的情况下判断条件才成功
# 判断值是否在小于0或大于10
num 10
if num 0 or num 10: print(hello)
else:print(undefine)
# 输出结果: undefine# 判断值是否在0~5或者10~15之间
num 8
if (num 0 and num 5) or (num 10 and num 15): print(hello)
else:print(undefine)
3.3 嵌套循环
所谓的嵌套循环顾名思义就是在循环中还嵌套了循环
案例一 购物结算程序
购物结算程序根据用户是否为会员以及购买金额的不同给出不同的折扣。
代码的流程如下
从用户输入中获取是否为会员的信息以及购物金额的信息。判断用户是否为会员如果是会员则进入下一个判断如果不是会员则根据购物金额是否满足满减条件给出折扣价并输出。判断购物金额是否满足满减条件如果满足则给出相应的折扣如果不满足则给出默认的折扣即不打折。计算折扣价并输出。
answer input(你是会员吗y/n)
money int(input(请输入你的购物金额))if answer y:if money 200:discount 0.8elif money 100:discount 0.9else:discount 1.0pay_money money * discountprint(您本次购物的原价为{}元折扣价为{}元.format(money, pay_money))
else:print(您不是会员)if money 500:discount 0.9else:discount 1.0pay_money money * discountprint(您本次购物的原价为{}元折扣价为{}元.format(money, pay_money))
在这段代码中我们将每个输出内容的字符串都用format()方法格式化输出我们将两个if语句中计算折扣的部分合并在一起并在每个if语句之外计算折扣价避免代码的重复
执行结果 总结 ✨原创不易还希望各位大佬支持一下\textcolor{blue}{原创不易还希望各位大佬支持一下}原创不易还希望各位大佬支持一下 点赞你的认可是我创作的动力\textcolor{green}{点赞你的认可是我创作的动力}点赞你的认可是我创作的动力 ⭐️ 收藏你的青睐是我努力的方向\textcolor{green}{收藏你的青睐是我努力的方向}收藏你的青睐是我努力的方向 ✏️ 评论你的意见是我进步的财富\textcolor{green}{评论你的意见是我进步的财富}评论你的意见是我进步的财富