python循环语句range,python中for循环的用法range
Python的range函数和for循环语句rice教育
发布时间:18-11-1518:49
本文介绍了Python for循环语句和range函数的使用。本文主要讨论for循环语句。Python for loop语句类似于shell或脚本语言中的foreach循环,可以迭代序列对象。
range函数允许Python的for循环提供类似于传统for循环的函数。
通过本文的学习,我们可以达到以下目的。
使用for loop语句迭代sequence对象,以掌握range函数的用法。Python提供的另一个循环结构是for循环语句。Python提供的for循环语句与Java、C等编程语言提供的for语句不同。Python中的for循环更像脚本语言中的shell或foreach循环。
可以遍历列表、元组、字符串等序列成员(列表、元组、字符串也称为序列),也可以用于列表解析和生成器表达式。
1.用序列项迭代序列对象。可以通过for循环迭代sequence对象的所有成员,迭代结束后循环会自动结束。其语法如下:
对于列表中的iter_var:语句块;
其中iter_var是迭代变量,指向序列对象的元素,list是迭代对象。语句是一个循环体,在其中可以使用iter_var来访问iterable对象的元素。
示例:使用Pyhton list构建同学花名册,使用for循环迭代输出花名册内容。
该程序初始化一个Python列表,在列表中存储名称,然后使用for循环语句遍历Python列表,获取列表中的每个元素并输出。流程图如下:
图1示例1流程图
流程图使用for循环控制,迭代花名册列表,并输出列表元素。迭代后,它自动退出循环,程序结束。
根据图1所示的流程图,下面给出示例1的程序代码。
在for语句的每个循环中,item变量被设置为学生列表的当前元素,由print语句使用。
示例1的输出结果如下图所示。
当用for循环迭代一个字符串时,迭代的变量将只包含一个字符。遍历字符串序列的功能并不常用。在字符串中搜索字符时,in运算符更常用于确定子字符串还是单个字符属于字符串。
示例:输出一个字符串的所有字母序列。
程序初始化一个字符串,然后用for循环语句遍历字符串,获取字符串中的单个字符,并用print语句输出。流程图和第1列类似,这里就不画流程图了。程序代码如下:
2示例的输出结果如下图所示。
2.使用序列索引迭代序列对象在示例1中,序列项用于迭代列表对象。for循环中的IN子句将确定当前序列项是否在序列中。如果属于列表,则继续循环,否则,退出循环。在for循环语句中,还可以使用序列索引来迭代列表。使用序列索引迭代序列对象的语法如下:
对于范围内的索引(len(list)):
语句块;
其中index是序列的索引项,range是计数函数,后面会详细解释。len获取序列对象的长度。
示例1使用序列索引遍历列表的代码如下:
使用range函数获取用于迭代index的索引号列表,并使用sequence对象的访问运算符“[]”来访问相应的sequence对象。
3.使用枚举函数enumerate()迭代序列对象用于将序列对象转换为索引序列,并返回序列对象的索引和成员。通常,序列对象的索引计数和成员是在for循环中获得的。使用枚举函数迭代序列对象的语法如下:
对于index,iter_var in enumerate (list,start_index=0):
语句块;
其中index是enumerate返回的索引计数,iter_var是索引计数对应的sequence对象的成员,list是要遍历的sequence对象,start_index是返回的初始索引计数,默认为0。
示例1使用枚举函数遍历列表的代码如下:
使用enumerate函数获取student的索引计数。索引计数从0开始,或者您可以指定起始索引计数。
索引从2开始,输出结果如下图所示。
4.前面介绍的关于range函数的for循环是一种迭代循环机制,不同于Java、c等传统编程语言的for循环,那么Python能否提供类似于传统for循环的函数呢?循环从一个数字开始计数到另一个数字,一旦到达最后一个数字或者不再满足某个条件,就退出循环。
Python提供的range函数可以让for循环实现上述功能,可以让for循环从0到10计数,或者从10到100每次递增5。range函数的语法如下:
范围(开始、结束、步长=1)
Range将返回一个整数序列,statr是整数序列的起始值,end是整数序列的结束值。生成的整数序列不包含结束值。Step是整数序列中的增量步长,默认值为1。
例如:
输出如下图所示。
Range(0,5)生成包含0,1,2,3和4的整数序列。Python将把这个生成的整数序列用于for loop语句,从0到5循环,不包括5,步长为1,循环数为5。
Range(10,30,5)生成一个包含10,15,20,25的整数序列,从10到25循环,不包括30,步长为5,循环次数为4。可以看出,当range用于for循环时,循环的次数取决于range返回的整数序列的长度,每次循环的索引计数就是整数序列的值。
示例:使用for循环查找自然数的阶乘。
自然数的阶乘是所有小于或等于自然数的自然数的乘积。求自然数k的阶乘,就是把所有小于等于k的自然数从1开始依次相乘,包括k,程序可以通过range函数返回小于自然数的整数序列,然后迭代range函数返回的整数序列。程序代码如下:
课程总结
(Python提供的for循环语句不同于Java、C等编程语言提供的for语句。Python中的for更像脚本语言中的shell或foreach循环。可以遍历列表、元组、字符串等序列成员(列表、元组、字符串也称为序列),也可以用于列表解析和生成器表达式。
(2)Pyhton的for循环利用range函数实现传统的for循环函数,从一个数开始计数到另一个数,只要到达最后一个数或者不再满足某个条件就退出循环。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。