python入门语法教程:for循环语句详解

上一节提到过计数控制的循环是根据绝对值的次数来进行循环,我们通过for语句来实现计数循环,那么在for循环中一定存在控制次数的对象。

    1. for循环

for循环是通过次数的大小来进行循环,通常我们会使用遍历序列或枚举以及迭代来进行循环。

for循环的结构为:

12   for 迭代变量  in 对象:       循环体

迭代变量在我们每一次循环中保存根据变量得到的值,对象既是有序的序列,可以是字符串、元组、列表,也可以是无序的序列,例如字典。而循环体则为一条或若干条会被重复执行的语句。

下面是for循环可迭代的对象类型

123456789   index  = [ 1 , 2 , 3 , 4 ] #列表   string  = 'abcdef' #字符串   sets  = ( 1 , 2 , 3 , 4 ) #集合   for  in index:       print (i)   for  in string:       print (i)   for  in sets:       print (i)

我们来看一下for循环语句的执行流程图:

python入门语法教程:for循环语句详解

先定义一个循环

1 for  in range ( 10 )

从流程图中来分析一下这个循环。

首先我们分析这个循环的结构,i为迭代对象,range(10)为对象,在这里这个对象为一个0-9的序列,它等价于[0,1,2,3,4,5,6,7,8,9]。

当进入这个循环,首先会判断0-9是否遍历完,如果还未开始,则从第一个开始遍历,第一次是直接进入循环体,然后再次回到判断,判断是否还有值未进入循环,如果存在,就取这一项再次进入循环体,直到序列中的对象全部遍历完,然后退出循环。

下面我们通过一个实例来学习一下:

123   index  = 5   for  in range (index):       print ( "这是第" ,i, '项' )

运行结果:

12345   这是第      这是第  1    这是第  2    这是第  3    这是第  4 

通过这个简单的例子我们简单的认识了for循环,它的原理是根据对象中因素去决定它需要迭代多少次,迭代完成后退出循环。

在for循环中中离不开range()函数的使用,下面来了解一下range()函数。

    2. range()函数

range()函数是Python内置的函数,它被用于生成一系列连续的整数,它的语法格式为:

1 range (start, stop[, step])

start:计数的第一个值,是包含这个值,如果没有start的时候默认为0。

stop:计数的最后一位,不包含这个值,当range(1,3)的时候,等同于[1,2]是没有3这个数字的,在使用的时候一定要注意这一点。当range()中只有一个数字的时候,像range(3),对应的是[0,1,2]这样一个序列,关于这点大家多多使用就会体会到。

step:为步长,用来控制取数之间的间隔,如果省略则默认为1,如果为2,3等则步长为2,3等。步长为-1时为逆序。

通过下面例子来看了解一下range函数。

1234567891011121314   >>>   list ( range ( 10 )) #范围0-9   [ 1 2 3 4 5 6 7 8 9 ]   >>>  list ( range ( 1 11 )) #范围1-10   [ 1 2 3 4 5 6 7 8 9 10 ]   >>>  list ( range ( 30 5 ))范围 - 29 ,步长为 5   [ 5 10 15 20 25 ]   >>>  list ( range ( 10 3 ))范围 - 9 ,步长为 3   [ 3 6 9 ]   >>>  list ( range ( - 10 - 1 ))范围 - - 10 ),步长为 - 1   [ - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 ]   >>>  list ( range ( ))   []   >>>  list ( range ( 1 ))   []

能够熟练的使用range()函数对我们之后的学习有很大的帮助,大家可以在自己的编辑器上多多尝试一下这个函数。