python if elif_Python进阶记录之基础篇(三)

回顾

在Python进阶记录之基础篇(二)中,我们介绍了Python中基本数据类型之间的转换以及运算符的相关知识,需要重点掌握各数据类型转换方法的基本用法及含义,运算符的种类和用法。今天我们讲一下Python中的分支结构。

分支结构的概念与意义

在之前的两篇内容中我们使用到的代码都是一条一条语句执行下去的,这种逐句执行的程序我们称之为顺序结构程序。顺序结构的程序虽然能解决计算、输出等问题,但不能做判断选择。举个简单的例子,假设我们现在有这样一个需求:给定一个整数,如果该整数能被2整除,将该整数除以2并输出结果,否则输出该整数本身。这样的需求靠顺序结构程序是无法实现的,我们需要使用另一种程序结构——分支结构。

分支结构程序的执行是依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序。分支结构程序的关键在于构造合适的分支条件和分析程序流程,根据不同的程序流程选择适当的分支语句。Python中使用if条件语句实现分支结构。(不像Java、C等语言,Python中没有switch-case语句,所有条件语句都使用if-elif-else语句实现。)

if语句的用法

Python中的if语句有三个关键字:if、elif和else。关键字就是在Python中有特殊含义的单词,这里的if、elif和else就是专门用于构造分支结构的关键字,所以你不能使用它们作为变量名。if语句根据不同的需求可以构建以下四种基本的分支结构:单一分支体、双分支体、多分支体和嵌套分支体。

我们首先看一下单一分支体。Python中单一分支体的if语句的一般形式如下。

 if 条件: 符合条件后执行的分支体

现在有这样一个需求:给定一个整数,如果它大于100就输出。我们使用单一分支体的if语句实现。首先给出两个变量a和b,分别赋值150和88,if语句的条件就是大于100,即a>100和b>100,符合条件后执行的分支体就是print()语句。可以看到,只有大于100的150被输出了,小于100的88由于不满足条件,不会进入分支体,所以不会输出。

8665867c6d3288088ebfa39ce5a8e914.png

单一分支体

下面我们看一下双分支体。Python中双分支体的if语句的一般形式如下。

 if 条件: 符合条件后执行的分支体 else: 不符合条件后执行的分支体

双分支体就是在if条件的基础上再加一个else关键字,若不满足if条件,则会走else的分支体。现在给出以下需求:给定一个整数,如果该整数能被2整除,将该整数除以2并输出结果,否则输出该整数本身。我们使用双分支体的if语句实现。

cbda897105944ce827347f4f436c9641.png

双分支体

多分支体就是有多个并列的条件分支的分支结构。Python中使用if-elif-else实现多分支体。多分支体的if语句的一般形式如下,其中elif可以根据需要出现任意次数。

 if 条件1: 符合条件1后执行的分支体 elif 条件2: 符合条件2后执行的分支体 ... elif 条件n: 符合条件n后执行的分支体 else: 不符合以上条件后执行的分支体

现在有如下需求:给定一个分段函数,当x>0时,y=2x;当x=0时,y=100;当x<0时,y=x²,输入变量x,输出函数值y。我们使用多分支体的if语句实现。以下代码中最后一个分支我们使用了else,其实它跟elif a < 0的作用是一样的,但一般最后一个分支我们直接使用else即可。

ecdec7ab17f6783c56e9cdcc72c26cbc.png

多分支体

嵌套分支其实就是if语句的嵌套,即需要依次满足多个条件,是一种相对复杂的分支结构。Python中嵌套分支的if语句的一般简单形式如下。

 if 条件1: if 条件2: 符合条件1和条件2后执行的分支体 else: 符合条件1但是不符合条件2后执行的分支体

我们通过嵌套分支来实现以下需求:给定一个整数,判断它能否被2和3整除的情况并输出结果。

b52cb093f496c640692fe4ed3f60e5d2.png

嵌套分支

Python输入函数input()

之前的代码示例中,我们都是直接给定变量进行之后的操作。Python中给我们提供了 input()这个内置函数,它会从标准输入中读入一行文本,默认的标准输入是键盘。有了这个函数,我们就可以通过输入自己想要的值来赋值给变量了。

例如上述“给定一个整数,判断它能否被2和3整除的情况并输出结果”这个例子中,我们将input()函数引入。input()函数默认返回值为字符串型,而下列代码中我们的条件语句中需要的是一个整数,所以我们要将输入的变量通过int()方法转换成整型后再进行后续操作。

925407f7ba6560698945235127510e03.png

input()输入函数

练习

1、数字猜谜游戏。给定一个猜测数字,请用户输入一个数字,如果大于猜测数字,提示猜的数字大了,如果小于猜测数字,提示猜的数字小了,如果猜中则提示猜中。

2、成绩分数转等级。输入一个0~100的成绩分数,如果分数大于等于0小于60,输出E,如果分数大于等于60小于70,输出D,如果分数大于等于70小于80,输出C,如果分数大于等于80小于90,输出B,如果分数大于等于90,输出A。

第一题示例代码

5052f31f73ec695d1cf5eb30bb5064ee.png

数字猜谜游戏

第二题示例代码。

9b3b48aec558cccc96e1ed6edeec33da.png

成绩分数转等级

总结

以上内容介绍了分支结构的概念以及Python中分支结构if语句的使用方法,输入函数input()的基本用法。if语句以后会经常使用到,是一个很基础但很重要的知识,练习部分的两道题可以练练手,以加深印象。感谢大家的关注,欢迎一起学习交流~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值