赞
踩
在学习python层次结构(分支结构和循环结构)之前,我们先了解一下代码的层次。如果你有c/c++、lua等其他语言基础的话,应该知道c/c++是括号来表示代码层次的,而lua是由关键字then和end构成代码层次。但python不一样,它是以缩进的方式表示代码层次结构的,相同的缩进代表相同的代码层次结构。可以缩进任意数量空格,但是通常是4个空格,一般不使用tab键。
从上一篇文章中,我们所涉及到的python代码都是顺序执行的。然而只有顺序执行的代码并不能解决所有问题,比如我们输入密码有成功失败的,成功失败处理的流程是不一样的,所以我们要有分支结构。又比如1~100求和,这种类似重复的工作,我们并不想傻瓜似的做这样的工作,所以我们就会使用循环结构来做这样的重复的事情。
条件语句就是判断某个条件是否成立,根据结果执行不同的操作。它主要有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)
明确知道循环执行次数或者对某个容器迭代,那么推荐使用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
我们不知道循环执行次数时,推荐使用while循环,主要是通过某个条件来判断循环结束,或者在循环中使用break跳出循环。语法图:
代码例子:
- import random
-
- answer = random.randint(1, 100)
- counter = 0
- while True:
- counter += 1
- number = int(input('input:'))
- if number < answer:
- print('small')
- elif number > answer:
- print('big')
- else:
- print('right!')
- break
-
- print('game over!')
-
break关键字就是终止同层次的循环语句;
continue关键字就是跳过本次同层次的循环剩余语句,进入下一轮循环;
pass关键字是一个空语句,不做任何事情,只占语句位,是为了保持程序结构完整性。
else关键字是在判断循环中是否有遇到break。
下面重点说一下else,语法如下:
- for <循环变量> in <遍历结构>:
- <语句块1>
- else:
- <语句块2>
-
- while <条件>:
- <语句块1>
- else:
- <语句块2>
上面我们讲了Python分支结构与循环结构,大概都知道这两个结构的语法和使用,但有一点还要说明,python的中所有结构都可以相如深层嵌套,后面会看到很多这样的深层嵌套例子。
希望本文对大家有所帮助! 转载请注明
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。