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

2022-07-2719:48:46编程语言入门到精通Comments1,454 views字数 1653阅读模式

上一节提到过计数控制的循环是根据绝对值的次数来进行循环,我们通过for语句来实现计数循环,那么在for循环中一定存在控制次数的对象。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

    1. for循环文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

for循环是通过次数的大小来进行循环,通常我们会使用遍历序列或枚举以及迭代来进行循环。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

for循环的结构为:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

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

迭代变量在我们每一次循环中保存根据变量得到的值,对象既是有序的序列,可以是字符串、元组、列表,也可以是无序的序列,例如字典。而循环体则为一条或若干条会被重复执行的语句。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

下面是for循环可迭代的对象类型文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

1
2
3
4
5
6
7
8
9
 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循环语句的执行流程图:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

python入门语法教程:for循环语句详解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

先定义一个循环文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

1
for in range(10)

从流程图中来分析一下这个循环。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

首先我们分析这个循环的结构,i为迭代对象,range(10)为对象,在这里这个对象为一个0-9的序列,它等价于[0,1,2,3,4,5,6,7,8,9]。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

当进入这个循环,首先会判断0-9是否遍历完,如果还未开始,则从第一个开始遍历,第一次是直接进入循环体,然后再次回到判断,判断是否还有值未进入循环,如果存在,就取这一项再次进入循环体,直到序列中的对象全部遍历完,然后退出循环。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

下面我们通过一个实例来学习一下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

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

运行结果:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

1
2
3
4
5
 这是第 0 
 这是第 1 
 这是第 2 
 这是第 3 
 这是第 4 

通过这个简单的例子我们简单的认识了for循环,它的原理是根据对象中因素去决定它需要迭代多少次,迭代完成后退出循环。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

在for循环中中离不开range()函数的使用,下面来了解一下range()函数。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

    2. range()函数文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

range()函数是Python内置的函数,它被用于生成一系列连续的整数,它的语法格式为:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

1
range(start, stop[, step])

start:计数的第一个值,是包含这个值,如果没有start的时候默认为0。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

stop:计数的最后一位,不包含这个值,当range(1,3)的时候,等同于[1,2]是没有3这个数字的,在使用的时候一定要注意这一点。当range()中只有一个数字的时候,像range(3),对应的是[0,1,2]这样一个序列,关于这点大家多多使用就会体会到。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

step:为步长,用来控制取数之间的间隔,如果省略则默认为1,如果为2,3等则步长为2,3等。步长为-1时为逆序。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

通过下面例子来看了解一下range函数。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 >>>  list(range(10))#范围0-9
 [0123456789]
 >>> list(range(111))#范围1-10
 [12345678910]
 >>> list(range(0305))范围0-29,步长为5
 [0510152025]
 >>> list(range(0103))范围0-9,步长为3
 [0369]
 >>> list(range(0-10-1))范围0--10),步长为-1
 [0-1-2-3-4-5-6-7-8-9]
 >>> list(range(0))
 []
 >>> list(range(10))
 []

能够熟练的使用range()函数对我们之后的学习有很大的帮助,大家可以在自己的编辑器上多多尝试一下这个函数。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/26134.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ymba/26134.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定