Python分支结构与循环结构
目录
在学习python层次结构(分支结构和循环结构)之前,我们先了解一下代码的层次。如果你有c/c++、lua等其他语言基础的话,应该知道c/c++是括号来表示代码层次的,而lua是由关键字then和end构成代码层次。但python不一样,它是以缩进的方式表示代码层次结构的,相同的缩进代表相同的代码层次结构。可以缩进任意数量空格,但是通常是4个空格,一般不使用tab键。
从上一篇文章中,我们所涉及到的python代码都是顺序执行的。然而只有顺序执行的代码并不能解决所有问题,比如我们输入密码有成功失败的,成功失败处理的流程是不一样的,所以我们要有分支结构。又比如1~100求和,这种类似重复的工作,我们并不想傻瓜似的做这样的工作,所以我们就会使用循环结构来做这样的重复的事情。
Python分支结构
条件语句
条件语句就是判断某个条件是否成立,根据结果执行不同的操作。它主要有if语句、if-else语句和if-elif-else语句,if、else、elif是python的关键字。语法结构图如下:
代码例子:
#百分制成绩转换为等级制成绩grade = 'F'score = float(input('请输入成绩: '))if score >= 90: grade = 'A'elif score >= 80: grade = 'B'elif score >= 70: grade = 'C'elif score >= 60: grade = 'D'else: grade = 'E'print('等级:', grade)
Python循环结构
1.for-in循环
明确知道循环执行次数或者对某个容器迭代,那么推荐使用for-in循环,使用方法:
for in :
for-in循环就是从遍历结构取出值放到循环变量中,然在在语句块中执行相应的逻辑处理,直到取完遍历结构中所有元素。遍历结构主要是range(m,n,k)、字符串、序列。遍历结构中的range的用法非常灵活,如:
range(n):产生0到n-1范围的整数
range(m, n):产生m到n-1范围的整数 注:n>m
range(m, n, k):产生m到n-1范围的整数,k是步长,即每次数值递增的值 注:n>m,k>0
range(m, n, -k):产生n+1到m范围的整数,k是步长,即每次数字递减的值 注:n<m,-k<0
2.while循环
我们不知道循环执行次数时,推荐使用while循环,主要是通过某个条件来判断循环结束,或者在循环中使用break跳出循环。语法图:
代码例子:
import randomanswer = random.randint(1, 100)counter = 0while True: counter += 1 number = int(input('input:')) if number answer: print('big') else: print('right!') break print('game over!')
3.break continue pass和else
break关键字就是终止同层次的循环语句;
continue关键字就是跳过本次同层次的循环剩余语句,进入下一轮循环;
pass关键字是一个空语句,不做任何事情,只占语句位,是为了保持程序结构完整性。
else关键字是在判断循环中是否有遇到break。
下面重点说一下else,语法如下:
for in : else: while : else:
上面我们讲了Python分支结构与循环结构,大概都知道这两个结构的语法和使用,但有一点还要说明,python的中所有结构都可以相如深层嵌套,后面会看到很多这样的深层嵌套例子。
希望本文对大家有所帮助! 转载请注明