首页 > 编程语言 >【Python从零到壹】Python条件语句详解

【Python从零到壹】Python条件语句详解

时间:2023-04-06 18:08:33浏览次数:30  
标签:语句 num Python money else 零到 详解 print 分支


欢迎大家来到互联网老辛的专栏《Python从零到壹》,在这里我将分享约300篇Python系列文章,所有文章都将结合案例、代码和作者的经验讲解,真心想把自己近十年的编程经验分享给大家,希望对您有所帮助,文章中不足之处也请海涵。

从事教学工作以来,越来越觉得时间的宝贵,每届学生都要讲重复的课,从今年开始,我将逐步把分享这件事做下去。

您的关注、点赞和转发就是对互联网老辛的最大的支持,知识无价人有情,希望我们都能在人生路上开心快乐、共同成长。

文章目录

  • 1. 一个概念
  • 2. 分支结构-单分支
  • a).单分支
  • b)二分支
  • c).多分支
  • d) 嵌套if
  • 3. 条件表达式
  • pass语句

1. 一个概念

记住一个概念: Python一切皆对象,所有对象都有一个布尔值,想要获得布尔值需要一个内置函数bool()

以下对象的布尔值为False

  • False
  • 数值0
  • None
  • 空字符串
  • 空列表
  • 空元祖
  • 空字典
  • 空集合
# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14

#测试对象的布尔值
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()))  #空元组

2. 分支结构-单分支

一.条件语句
选择结构:就是明确让计算机知道该在什么条件下做什么

在Python中使用冒号(:)来标识语句块的开始,块中每一条语句都有缩进并且缩进量相同,当回退到上一层缩进量时,就表示当前语句块已经结束。 下面开始详细讲解条件语句。

a).单分支

单分支语法如下:

if <condition>:
	<statement>
	<statement>

< condition > 是条件表达式,基本格式为< expr >< relop >< expr >;< statement >是语句主体。判断条件如果为真(True)就执行语句,如果为假(False)就跳过语句,执行下一条语句。条件判断通常有布尔表达式(True、False)、关系表达式(>、<、>=、<=、= =、!=)和逻辑运算表达式(and、or、not,其优先级从高到低是not、and、or)等。

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14


money=1000 #余额
s=int(input("请输入取款金额:"))
#判断余额是否充足
if money>=s:
    money=money-s
    print("取款成功,余额为:",money)

输出结果如下:

【Python从零到壹】Python条件语句详解_Python条件语句


当然单分支这里有个问题,如果我取2000就会出现问题:

【Python从零到壹】Python条件语句详解_分支结构_02


可以看到取款2000,就没有任何输出,这个时候我们就需要双分支结构

b)二分支

二分支语法如下:

if <condition>:
	<statement>
	<statement>
else:
	<statement>
	<statement>

执行过程如下图所示:

【Python从零到壹】Python条件语句详解_分支结构_03

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14

#双分支结构,if else
#从键盘录入一个整数,判断奇数还是偶数
num=int(input("请输入一个整数: "))
if num%2==0:
    print(num,"是一个偶数")

else:
    print(num,"是一个奇数")

输出结果如下

【Python从零到壹】Python条件语句详解_Python条件语句_04


【Python从零到壹】Python条件语句详解_Python_05

c).多分支

if多分支由if-elif-else组成,其中elif相当于else if,同时它可以使用多个if的嵌套。具体语法如下所示:

if <condition1>:
	<case1 statements>
elif<condition2>:
	<case2 statements>
elif<condition3>:
	<case3 statements>
...
else:
	<default statements>

【Python从零到壹】Python条件语句详解_嵌套_06

该语句是顺序评估每个条件,如果当前条件分支为True,则执行对应分支下的语句块,如果没有任何条件成立,则执行else中的语句块,其中else是可以省略的。代码如下:

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14
#多分支结构
'''
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 num>0 and num<60:
    print('No Pass')

else:
    print("对不起你的成绩不在有效范围内")

输出值为30,则在0到6之间,成绩为E等级,输出结果如下图所示。

【Python从零到壹】Python条件语句详解_Python条件语句_07

注意:由于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')

d) 嵌套if

【Python从零到壹】Python条件语句详解_Python条件语句_08

【Python从零到壹】Python条件语句详解_嵌套_09


举例:

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14
'''
是否是会员
会员 >=200 8折
    >=100 9折

非会员 >=500 9折

'''
answer=input("你是会员吗?y/n")
money=int(input('请输入你的购物金额:'))

if answer=='y':
    if money>=200:
            print('付款金额为:',money*0.8)

    elif money>100:
            print('付款金额为: ',money*0.9)
    else:
            print('未达到打折标准',money)

else:
    print("您是非会员")
    if money>=500:
            print('付款金额为:', money*0.9)

    else:
            print('不打折,付款金额为',money)

执行结果:

【Python从零到壹】Python条件语句详解_Python条件语句_10

3. 条件表达式

一般我们用if 。。else的输出格式为:

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14
'''
输入两个整数进行比较
'''
num_a=int(input('请输入第一个整数'))
num_b=int(input('请输入第二个整数'))
if num_a>=num_b:
    print(num_a,'大于等于',num_b)
else:
    print(num_a,'小于',num_b)

【Python从零到壹】Python条件语句详解_嵌套_11

现在修改为条件格表达式:
x if 判断条件,else y

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14
'''
输入两个整数进行比较
'''
num_a=int(input('请输入第一个整数'))
num_b=int(input('请输入第二个整数'))
print('使用条件表达式进行比较')
print( str(num_a)+'大于等于'+ str(num_b) if num_a>=num_b else str(num_a)+'小于'+ str(num_b) )

方便简化操作

pass语句

pass语句只是一个占位符,用在语法上需要占位的地方

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14

# 作者:互联网老辛
# 开发时间:2021/4/3/0003 9:14

`在这里插入代码片`answer=input('你是会员吗?y/n')
if answer=='y':
    pass
else:
    pass

用占位符,确保语法不报错。

总结
无论如何,作者都希望这篇文章能给您普及一些Python知识,更希望您能跟着我一起写代码,一起进步。如果文章能给您的研究或项目提供一些微不足道的思路和帮助,就更欣慰了。作者最大的期望就是文章中的一些故事、话语、代码或案例对您有所帮助,致那些努力奋斗的人。


标签:语句,num,Python,money,else,零到,详解,print,分支
From: https://blog.51cto.com/zmedu/6173910

相关文章

  • 关于python安装模块之后pychram仍然提示没有安装模块的问题
    项目场景:如图所示:需要安装的包已经安装好,但是到了pycharm里就没法使用,相信很多小伙伴遇到过这个问题。原因分析:遇到这个问题的主要原因是你的电脑里安装了两个pycharm解释器,你安装后,实际上是安装到了你电脑的Python3而非pycharm解释器。解决方案:所以我们可以在pycharm里面直......
  • python requests-html
    #pipinstallrequests-html '''目标网站:https://pic.netbian.com'''fromrequests_htmlimportHTMLSessionimportre,osimportrequestsfromtqdmimporttqdmfromfunctoolsimportpartialfrommultiprocessingimportPools......
  • python系列006
    先使用一个文件控制设备importtime#importpyvisafrompimiimportPiDevicedevice=PiDevice("ASRL3::INSTR")#创建实例,并手动写入地址参数,可以借助NIMax读取whoisPower=device.PiPower()#调用类中的方法,电源地址#Sendacommandtotheinstrument#......
  • C#高级--反射详解
    原文:C#高级--反射详解_c#反射_李宥小哥的博客-CSDN博客C#高级–反射详解零、文章目录一、反射是什么1、C#编译运行过程高级语言->编译->dll/exe文件->CLR/JIT->机器码 2、原理解析metadata:元数据数据清单,记录了dll中包含了哪些东西,是一个描述。IL:中间语言,编译把高级语言编译......
  • python中动态导入文件的方法
    1.简介在实际项目中,我们可能需要在执行代码的过程中动态导入包并执行包中的相应内容,通常情况下,我们可能会将所需导入的包及对象以字符串的形式传入,例如test.test.run,下面将介绍如何动态导入。假设存在如下包:其中test.py的内容如下:count=1defrun():print("run")......
  • opencv-python 4.12. 模板匹配
    理论模板匹配是一种在较大图像中搜索和查找模板图像位置的方法。为此,OpenCV附带了一个函数cv.matchTemplate()。它只是在输入图像上滑动模板图像(如在2D卷积中),并比较模板图像下的输入图像的模板和补丁。在OpenCV中实现了几种比较方法。它返回一个灰度图像,其中每个像素表示该像素的......
  • 通过python控制windows窗口的关闭和显示
    代码:importwin32gui,win32con,win32apiimportos,sys,reimportctypesimporttimedefshowWindow(hwnd):#展示窗口,以下几行代码都可以唤醒窗口win32gui.ShowWindow(hwnd,win32con.SW_SHOW)win32gui.ShowWindow(hwnd,win32con.SW_SHOWNA)win32gu......
  • python面向对象基础
    1.__str__def__str__(self):return'****'print对象时,打印的为__str__函数返回的值2.__del__()def__del__(self):#pass当删除对象时,将会自动调用__del__函数(删除对象:delobj)python继承:classA(B):pass其中A继承Bpython3+classA(object):pass任......
  • python3使用seaborn生成带有扰动点的分组箱型图
    不分组箱型图importjsonimportseabornassnsimportmatplotlib.pyplotaspltfig=plt.figure(figsize=(20,5))sns.set(style="darkgrid")xData=[]yData=[]zData=[]withopen('./files/1.txt',encoding='utf-8-sig')asf:......
  • python 打包及发布
    打包pythonsetup.pybdist_wheel需要进行C++编译,因此在执行上述命令之前请确保已经安装了【VisualStudio(Windows)】、【GCC(Linux)】、【XCode(Mac)】编译器。发布先安装一下twine:python-mpipinstalltwinetwineuploaddist/*这时候它会提示你输入pypi的账号密码没......