Python分支语句常见的使用方法

目录
  • 前言
  • 一、单分支语句:if语句
  • 二、二分支语句:if else语句
  • 三、多分支结构:if – elif – else语句
  • 四、嵌套分支结构

前言

Python分支语句,也称为选择语句,体现了程序的选择结构,即对应不同的场景,选择不同的处理方式。当满足某个条件的时候,进行对应的操作,不满足则进行其他的操作。

分支语句可分为单分支、二分支和多分支结构,在所有分支中,只能选择其中一条路径,根据分支条件成立与否决定是否执行。由于只能选择一条路径执行,所以应当充分考虑分支语句的条件的设立规则。下面由几个实例来说明分支语句的用法。

一、单分支语句:if语句

单分支结构是最简单的一种选择结构,语法结构如下:

if 条件表达式:
    语句块

当条件表达式成立的时候,执行语句块,不成立则不执行。例如:用户输入两个数,比较其大小,输出小的一个。

num_a = int(input('please input a number:'))
num_b = int(input('please input another number:'))
if num_a > num_b:
  num_a, num_b = num_b, num_a #交换两个数
  print("the smaller one is",num_a)

上例运用单分支结构,当数a大于数b的条件成立的时候,将两者交换,最后输出较小的数a。分支语句中,仅当条件成立的时候才执行,否则不执行交换,直接顺序执行分支语句之后的语句。

二、二分支语句:if else语句

二分支结构在单分支结构的基础上增加了else语句,当if条件不成立时,执行else语句,语法结构如下:

if 条件表达式:
    语句块1
else:
    语句块2

二分支结构是二选一的结构,语句块1和语句块2有且只有一个一定会被执行到。

还是上面的例子,用二分支语句可以写作:

num_a = int(input('please input a number:'))
num_b = int(input('please input another number:'))
if num_a > num_b:
  print("the smaller one is",num_b)
else:
  print("the smaller one is",num_a)

再如,根据身份证号码判断性别,可以写作:

id_code = input('请输入身份证号码:')
number = int(id_code[-2])
if number%2 == 0:
  print("女性")
else:
  print("男性")

这里的else隐含条件是number%2 == 0不成立,即number为奇数,所以也可以将else换做if number%2 == 1,但是从程序的执行效率上考虑,两个if语句需要执行两次判断,而else语句不需要做判断,所以效率更高。

三、多分支结构:if – elif – else语句

多分支结构是二分支结构的扩展,即多选一的情况,其中else语句是可选的,当else存在时,有且只有一个分支会被执行到。其语法结构如下:

if 条件表达式1:
  语句块1
elif条件表达式2:
  语句块2
…
elif条件表达式n:
  语句块n
else:
  语句块n+1

例如让用户输入身高体重,计算其BMI指数。BMI指身体质量指数,是用体重(kg)除以身高(m)的平方得到,有国际通用的衡量标椎:

过轻 低于18.5****
正常 18.5-25(不含)
偏胖 25-30(不含)
肥胖 30-35(不含)
重度肥胖 35及以上
weight = float(input("请输入你的体重(Kg):"))
height = float(input("请输入你的身高(m):"))
BMI = weight / height ** 2
if BMI < 0:
    print("输入错误")
elif BMI < 18.5 :
    print("偏瘦")
elif BMI < 25 :
    print("正常")
elif BMI < 30 :
    print("偏胖")
elif BMI < 35 :
    print("肥胖")
else:
    print("重度肥胖")

上例通过计算得到BMI指数,根据其值输出所对应的“档位”,因为在设定分支条件时应当注意每个分支条件之间没有重复区域,才能保证输出结果为其中一种。

四、嵌套分支结构

在分支语句中如果要做进一步的条件判断,就会用到嵌套的分支结构。嵌套也可以有多层,通过缩进来表示其包含关系。

代表性语法结构如下:

if 条件表达式1:
  …
    if条件表达式2:
        语句块1
    else:
        语句块2
else:
  语句块3

例如上例在做身份证号的性别判断时,如果要先对输入的身份证号合法性做基本检查,例如其位数是不是正确,则需要嵌套分支:

id_code = input('请输入身份证号码:')
if len(id_code) == 18:
    number = int(id_code[-2])
    if number%2 == 0:
        print("女性")
    else:
        print("男性")
else:
    print("输入不合法")

到此这篇关于Python分支语句常见的使用方法的文章就介绍到这了,更多相关Python分支语句内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python分支语句与循环语句应用实例分析

    本文实例讲述了Python分支语句与循环语句应用.分享给大家供大家参考,具体如下: 一.分支语句 1.if else语句 语法: if 条件判断: 执行的语句块1 else : 执行语句块2 当满足条件的时候则执行语句块1 ,不满足条件就执行语句块2 注意:1.条件判断后面要加冒号":": 2.执行语句块需要缩进[4个空格]. else 与 if对齐,else后面要加":",语句块缩进4个空格 ''' 从控制台输入年龄,如果年龄小于18岁,打印"未成年人禁

  • Python中分支语句与循环语句实例详解

    前言 本篇博文介绍一下Python中的if条件语句.while循环语句.for in循环语句以及break和continue控制关键字. 分支的基本语法 if 条件表达式: 语句1 语句2 语句3 ...... 条件表达式就是计算结果必须为布尔值的表达式 表达式后面的冒号不能少 注意if后面的出现的语句,如果属于if语句块,则必须同一个锁紧等 if条件控制语句 条件控制语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块.if后面应该接一个条件,即一个布尔类型.而且Py

  • Python多分支if语句的使用

    注意:if语句代码是从上往下执行的,当执行到满足条件的语句时,代码会停止往下执行 注意:if语句后面要加上冒号 score = int (input("score:")) if score > 90: print("A") elif score > 80: print("B") elif score > 70: print("C") elif score > 60: print("D"

  • Python分支语句常见的使用方法

    目录 前言 一.单分支语句:if语句 二.二分支语句:if else语句 三.多分支结构:if – elif – else语句 四.嵌套分支结构 前言 Python分支语句,也称为选择语句,体现了程序的选择结构,即对应不同的场景,选择不同的处理方式.当满足某个条件的时候,进行对应的操作,不满足则进行其他的操作. 分支语句可分为单分支.二分支和多分支结构,在所有分支中,只能选择其中一条路径,根据分支条件成立与否决定是否执行.由于只能选择一条路径执行,所以应当充分考虑分支语句的条件的设立规则.下面由

  • 一文带你了解Python 四种常见基础爬虫方法介绍

    一.Urllib方法 Urllib是python内置的HTTP请求库 import urllib.request #1.定位抓取的url url='http://www.baidu.com/' #2.向目标url发送请求 response=urllib.request.urlopen(url) #3.读取数据 data=response.read() # print(data) #打印出来的数据有ASCII码 print(data.decode('utf-8')) #decode将相应编码格式的

  • Python+NumPy绘制常见曲线的方法详解

    目录 一.利萨茹曲线 二.计算斐波那契数列 三.方波 四.锯齿波和三角波 在NumPy中,所有的标准三角函数如sin.cos.tan等均有对应的通用函数. 一.利萨茹曲线 (Lissajous curve)利萨茹曲线是一种很有趣的使用三角函数的方式(示波器上显示出利萨茹曲线).利萨茹曲线由以下参数方程定义: x = A sin(at + n/2) y = B sin(bt) 利萨茹曲线的参数包括 A . B . a 和 b .为简单起见,我们令 A 和 B 均为1,设置的参数为 a=9 , b=

  • Python异常之常见的Bug类型解决方法

    目录 一.粗心导致的语法错误SyntaxError 1.input输入报错 2.循环语句报错 3.赋值报错 二.知识不熟练导致的错误Bug 1.索引越界问题 IndexError 2.append()函数的使用报错 三.思路不清晰导致的问题解决方案 1.使用print()函数 2.使用"#"暂时注销部分代码 四.被动掉坑 一.粗心导致的语法错误SyntaxError 1.input输入报错 age=input('请输入你的年龄:') if age>=18:     print(&

  • python列表中常见的一些排序方法

    目录 1.冒泡排序法 方法一:直接使用for循环 方法二:使用while语句 2.选择排序法 方法一:remove和append同时使用 方法二:pop和append同时使用 3.list.sort()方法 4.sorted()函数 总结 1.冒泡排序法 让列表中的一项和下一项作比较,若前一项大于后一项则交换两者位置(升序). 方法一:直接使用for循环 L=[8,2,50,3] for i in range(len(L)): for j in range(i+1,len(L)): if L[i

  • Python常见格式化字符串方法小结【百分号与format方法】

    本文实例讲述了Python常见格式化字符串方法.分享给大家供大家参考,具体如下: [方式一]百分号(%)方式,类C的printf,需要分别不同类型. 1.匿名tuple.(推荐在参数少时用) >>> '姓名:%s, 年龄:%d' % ('walker', 99) '姓名:walker, 年龄:99' 2.命名dict,字典的key可以重用. >>> '姓名:%(name)s, 年龄:%(age)d, 工龄:%(age)d' % {'name':'walker', 'ag

  • Python with语句上下文管理器两种实现方法分析

    本文实例讲述了Python with语句上下文管理器.分享给大家供大家参考,具体如下: 在编程中会经常碰到这种情况:有一个特殊的语句块,在执行这个语句块之前需要先执行一些准备动作:当语句块执行完成后,需要继续执行一些收尾动作.例如,文件读写后需要关闭,数据库读写完毕需要关闭连接,资源的加锁和解锁等情况. 对于这种情况python提供了上下文管理器(Context Manager)的概念,可以通过上下文管理器来定义/控制代码块执行前的准备动作,以及执行后的收尾动作. 一.为何使用上下文管理器 1.

  • Python 循环终止语句的三种方法小结

    在Python循环终止语句有三种: 1.break break用于退出本层循环 示例如下: while True: print "123" break print "456" 2.continue continue为退出本次循环,继续下次循环 示例如下: while True: print "123" continue print "456" 3.自定义标记 Tag 自已定义一个标记为True或False 示例代码: Tag

  • python装饰器常见使用方法分析

    本文实例讲述了python装饰器常见使用方法.分享给大家供大家参考,具体如下: python 的装饰器,可以用来实现,类似spring AOP 类似的功能.一样可以用来记录某个方法执行前做什么,执行后做什么,或者用来记录日志,运行的时间等,更有甚者,用这个来做权限拦截,也未尝不可.从两个方面来描述python 的装饰模式: 1. 对普通方法的装饰 2. 对在 class 类中的方法的装饰,不需要给参数的情况 3. 对在 class 类中的方法的装饰,需要给参数的情况 一,对普通方法的装饰.比如,

随机推荐