当前位置: 首页 > 科技观察

Python分支语句的常见用法

时间:2023-03-12 18:06:49 科技观察

分支语句可分为单分支、双分支和多分支结构。在所有分支中,只能选择一条路径,根据分支条件是否成立决定是否执行。由于只能选择一条路径执行,因此要充分考虑分支语句条件的建立规则。下面是几个例子来说明分支语句的使用。1、单分支语句:if语句的单分支结构是最简单的选择结构,其语法结构如下:if条件表达式:语句块当条件表达式为真时,执行语句块,而如果不正确,则不执行。例如:用户输入两个数,比较它们的大小,输出较小的一个。num_a=int(input('请输入一个数:'))num_b=int(input('请输入另一个数:'))ifnum_a>num_b:num_a,num_b=num_b,num_a#交换两个数print("the较小的是",num_a)上面的例子使用了单分支结构。当数a大于数b的条件为真时,将两者交换,最后输出较小的数a。在分支语句中,只有条件为真时才执行,否则不进行交换,直接顺序执行分支语句之后的语句。2.二分支语句:ifelse语句二分支结构在单分支结构的基础上增加了一个else语句。当if条件不满足时,执行else语句。语法结构如下:if条件表达式:语句块1else:语句块2双分支结构是一种替代结构,只会执行语句块1和语句块2中的一个。还是上面的例子,二分支语句可以这样写:("小的是",num_b)else:print("小的是",num_a)再比如根据身份证号判断性别,可以写成:id_code=input('请输入IDnumber:')number=int(id_code[-2])ifnumber%2==0:print("female")else:print("male")这里的else隐式条件是number%2==0不成立,即number是奇数,所以也可以把else换成ifnumber%2==1,但是考虑到程序的执行效率,两个if语句需要执行两次判断,而else语句不需要做判断,效率更高。3、多分支结构:if-elif-else语句多分支结构是二分支结构的扩展,即多选一的情况,其中else语句是可选的。当else存在时,只有一个分支会被执行到达。其语法结构如下:if条件表达式1:语句块1elif条件表达式2:语句块2...elif条件表达式n:语句块nelse:语句块n+1比如让用户输入身高体重来计算他们的BMI指数。BMI是指体重指数,用体重(kg)除以身高(m)的平方得到。国际上有一个衡量标准:体重过轻18.5以下正常18.5-25(不含)超重25-30(不含)肥胖30-35(不含)重度肥胖35及以上体重=float(input("请输入您的体重(Kg):"))height=float(input("请输入您的身高(m):"))BMI=weight/height**2ifBMI<0:print("输入错误")elifBMI<18.5:print("苗条")elifBMI<25:print("正常")elifBMI<30:print("超重")elifBMI<35:print("肥胖")else:print("severecelyobese")在上面的例子中,通过计算得到BMI指标,根据其值输出对应的“档位”,因为在设置分支条件时,需要注意的是,两者之间没有重叠区域每个分支条件,以确保输出结果是其中之一。4.嵌套分支结构如果要在分支语句中做进一步的条件判断,就会使用嵌套分支结构。嵌套也可以有多层,缩进用来表示它的包含关系。代表性的语法结构如下:if条件表达式1:...if条件表达式2:语句块1else:语句块2else:语句块3对身份证号的合法性进行基本检查,如位数是否为是正确的,需要嵌套分支:id_code=input('请输入身份证号码:')iflen(id_code)==18:number=int(id_code[-2])ifnumber%2==0:print("女")else:print("男")else:print("输入无效")