7.Python语法之if、else、elif分支语句使用及注意事项
提示:帮帮志会陆续更新非常多的IT技术知识,希望分享的内容对您有用。本章分享的是Python基础语法。前后每一小节的内容是存在的有:学习and理解的关联性,希望对您有用~
python语法-python基础 第七节 :Python语法之if、else、elif分支语句使用及注意事项
提示:此小节分享Python分支语句的使用,面向所有需要帮助的人,如您完全不会,建议挨着看,我就是分享给你了,写的稍多。会or忘了 建议直接点击目录是可以快速看代码
文章目录
前言
没有if这些的语句控制,在Python文件里面编写代码,是逐行逐行的挨着全部运行。(就像前面几节分享的内容那样,代码有序的全部运行)
但是:实际中有非常多的情况,我们开发的功能,并不需要程序逐行逐行全部运行的。
可以根据不同的情况,编写代码,执行对应不同的语句。
如:用户性别是男,输出:“您好,先生”。用户性别是女,输出:“您好,女士。”。商品金额小于500,不打折。大于500,可以打9折。。。等等很多情况。
不能同时输出两句:您好,女士。您好,先生,这就是逐行运行的。如:查看成绩、金额打折、运费计算、等等。都是存在有多种不同的条件及情况,对应去执行相应的代码
一、Python语法 if语句
分支语句语义:根据不同的条件/情况,选择性的去执行对应的代码。
Python语法:
if 条件:
代码体/代码块
Python语法里面:让后续代码属于if的代码体,需要在代码前面有一个tab
(if条件 后面有个 : 冒号的哦~别忘了)
(键盘:最左边,大小写切换上面那个制表符键 TAB)
(代码语句前面有一个TAB表示:这行代码才~是属于if的代码块)
当满足条件的时候,代码体才会执行,如:
#故意这里写一句,意为:观察if逻辑
print("老莫-帮帮志")#这句代码,会直接运行,它没有在if代码块里面,和原来的语法一样
number = 10#定义变量number的数据是10
if number > 0: #判断number是否大于0
print("我是if里的代码体") #因为满足条件,所以本句会执行
#这句前面有TAB哦~ 重要~,(工具会提示,也可以自己按一下tab)
#不然它就不属于if的代码体,和外面那句没有区别,管你条件,直接就算逐行逐行的
运行结果:
我想谁会看我这小节的内容,:既然能来看我此篇if语法文章,,需要帮助查看Python的if语法。那么:tab就很重要了,直接关系到您自己写代码的 代码块。所以:啰嗦了一点,第二小节注意事项,会更加帮您巩固/观察这个tab。(手动比心)
if运行逻辑分享:
if 条件(bool数据类型的):
满足条件执行的代码块
if 空格后面,是bool数据类型的。前面小节分享的,数据类型:bool:它的结果只能是:(true false)
当bool为:true 。 条件满足,代码块运行
当bool为:false。 条件不满足,代码块不运行
上面的案例:
number的数据是10,条件是number > 0,满足条件的。所以代码块执行了
反之:不满足条件,不会运行,会直接跳过。如:
#故意这里写一个,意为:观察if区别
print("老莫-帮帮志")#这句代码,会直接运行,它没有在if代码块里面,和原来的语法一样
number = 10#定义变量number的数据是10
if number < 0: #判断number是否小于0 不满足~~~~~~
print("我是if里的代码体") #因为不满足条件小于0,所以本句不会执行
#故意这里写一个,意为:观察是否属于if的代码快及程序正常结束
print("没满足,我执行了呀。因为我在if的外面,不是它的代码快")
运行结果:前后都有,就是没有if里面的代码。刚才前言提过的:分支语句语义~它…
二、注意事项
Python语法,代码前面是否有TAB,TAB是描述是这句代码否属于代码体/代码块的 标记。
就像Java / c语言的 { },代码被{ }包着。而Python是TAB。
提示:语法习惯就好,有些一开始就写了很多年的Python,反而不习惯{ },经常写漏/写岔,一直报怨{ }没有Python方便。
提示:复杂代码 相互嵌套,Python直接看每一行前面有几个TAB就行,就套了几层呗,不用专注去查看{ { } } 包了几层
。java c c# 写习惯了,反而觉得:啊~ tab~
print("我是直接在Python文件里面的代码,直接逐行逐行运行的")
print("hi~帮帮志,前面没有tab")#直接运行 输出
number = 10
if number > 0:
print("满足,我执行。")
print("我虽然和if挨着的,但是!我前面没有TAB,就不属于if代码体,if的条件满足与否和我无关")#直接运行 输出
案例:
numberOne = 10
if numberOne > 0:
print("满足,我执行。")#满足条件 执行
print("我呢?")#执行
numberTwo = 10
if numberTwo < 0:
print("满足,我执行。")#不满足条件 不执行
print("现在呢?") #不满足条件 但是 我是属于。。。。。。tab 所以:不执行
三、Python语法 if else
Python语法:
if 条件:
代码体/代码块
else:
代码体/代码块
满足条件执行if里面的代码快。
不满足条件执行else里面的代码快。
二选一的逻辑
number = 10
if number > 0:
print("满足,我执行。")
else:
print("没有满足,那我执行")
if 和 else 同样的,是否属于代码块,前面需要有TAB按键的标记
哎呦~~所有Python 代码快的 语法都是这样的~~~~ 先 冒号 后续代码是否 tab
案例:
#int()转数据类型 input()控制台获取数据 ===》前面几个小节有详细分享
score = int(input("请输入成绩"))
if score >= 60:
print("恭喜及格了")
else:
print("没有及格")
#程序能用,但是还有bug:万一用户输入一个10000分,-33分,怎么办?
#解决:使用if嵌套if 保证成绩是正确的范围,在判断。不然就告知用户:请输入正确的范围
if 条件:
if 子条件: #一个tab 是上一个if的代码快 第一行if满足了 这堆才执行
代码体/代码块 #两个tab 先满足一个 在满足另一个才可以
else:
代码体/代码块
else:
代码体/代码块
四、Python语法 多组情况及elif
当存在多个条件的时候,使用此语法:elif
Python语法:
if 条件01:
代码体01/代码块01
elif 条件02:
代码体02/代码块02
elif 条件03:
代码体03/代码块03
else:
所有条件 都没有满足的 代码体/代码块
哪个条件满足,就执行它对应的代码体。都不满足,就执行else里面的:
案例:
sex = input("请输入性别")
if sex == '男':
print("你好,先生")
elif sex == '女':
print("你好,女士")
else:
print("你好")
总结
案例分享:
#超市打折活动,购物打折
#满500包含500打八折,200包含200到500之间打九折
money = float(input("请输入您购物的总金额:"))
# 判断是否满足打折活动
if money >= 500:
money = money * 0.8 #根据条件,修改变量的实时存储的内容
print("您满足了打八折活动,应付金额为:%.2f" % money)
elif money>=200 and money<500:
money = money * 0.9
print("您满足了打九折的活动,应付的金额为:%.2f" % money)
else:
# 不满足if条件时要执行的代码
print("您不满足打折活动,应付金额是:%.2f" % money)
print("谢谢您的惠顾,来看帮帮志,欢迎下次光临!")#前面没有tab。无论if。它最终执行。