Python - for循环的本质

参考

  1. https://foofish.net/how-for-works-in-python.html

for循环可以迭代一个可迭代(iterable)的对象

原理

  1. 生成这个可迭代对象(实现了__iter__方法的就叫可迭代对象)的迭代器(xx.__iter__())。
  2. 用迭代器协议(实现了__next__方法)去不断访问对象,捕捉到StopIteration就停止迭代。

好处

for循环遵循迭代器协议去访问对象,这样统一了访问接口,更加通用(这也是协议的好处)。

原文地址:https://www.cnblogs.com/allen2333/p/9373853.html

时间: 2024-08-03 12:34:15

Python - for循环的本质的相关文章

Python for 循环

Python for 和其他语言一样,也可以用来循环遍历对象,本文章向大家介绍Python for 循环的使用方法和实例,需要的朋友可与参考一下. 一个循环是一个结构,导致第一个程序要重复一定次数.重复不断循环的条件仍是如此.当条件变为假,循环结束和程序的控制传递给后面的语句循环. for循环: 在Python for循环遍历序列的任何物品,如一个列表或一个字符串,有能力. for循环语法是: for iterating_var in sequence: statements(s) 如果一个序列

Python的循环

循环是一个结构,导致一个程序要重复一定的次数 条件循环也一样,当条件变为假,循环结束 For循环 在python for循环遍历序列,如一个列表或一个字符. for循环语法:   ——for iterating_var in sequence: statements(s) 注:如果一个序列包含一个表达式列表,他是第一个执行,然后,该序列中的第一项赋值给迭代变量 iterating_var.接下来执行语句块.列表中的每个项目分配到 iterating_var,代码块被执行,且整个序列被耗尽, 注:

python之循环

循环 要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直接写表达式就不可能了. 为了让计算机能计算成千上万次的重复运算,我们就需要循环语句. Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,看例子: names = ['Michael', 'Bob', 'Tracy'] for name in names: prin

Python While 循环语句

Python While循环语句 Python 编程中while语句用于循环执行程序,即在一些条件下,循环执行一些段程序,以处理需要重复处理的相同任务. 执行语句可以是单个语句或语句块. 判断条件可以是任何表达式,任何非零.或非空(null)的值均为true. 当判断条件假false时,循环结束. 实例: #!/usr/bin/python count = 0 while ( count < 9): print 'The count is:', count count = count +1 pr

Python条件循环

if语句: if elif else: Python中if语句的一半表现形式: 1 if p_1: 2 print('is 1') 3 elif p_2: 4 print('is 2') 5 else: 6 print('is 3') 如果条件满足p_1将会输出is 1,如果条件不满足p_1满足p_2的话将会输出is 2,如果以上两个条件都不满足的话将会执行第三个结果is 3,所以if的关键语句为:if  elif  else. 注意: 每个条件后面都要使用冒号:,表示接下来满足条件后要执行的语

Python while 循环使用实例

while循环是在Python中的循环结构之一. while循环继续,直到表达式变为假.表达的是一个逻辑表达式,必须返回一个true或false值,本文章向码农介绍Python while 循环使用方法,需要的朋友可以看一下本文章. 一个循环是一个结构,导致第一个程序要重复一定次数.重复不断循环的条件仍是如此.当条件变为假,循环结束和程序的控制传递给后面的语句循环. while循环: while循环是在Python中的循环结构之一. while循环继续,直到表达式变为假.表达的是一个逻辑表达式,

Python学习-7.Python的循环语句-for语句

Python中循环可以使用for语句来实现 1 list = ['Tom','Lucy','Mary'] 2 for name in list: 3 print(name) 则将会依次输出Tom Lucy Mary 另外Python还支持continue和break关键字,用法与C#相同. 比较有特点的是Python的for语句中支持else关键字 例子: 1 max = 15 2 for i in range(10): 3 if(i==max): 4 break 5 print(i) 6 el

python 6 循环

循环 要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直接写表达式就不可能了. 为了让计算机能计算成千上万次的重复运算,我们就需要循环语句. Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,看例子: names = ['Michael', 'Bob', 'Tracy'] for name in names: prin

Python for循环语句

来自:http://www.runoob.com/python/python-for-loop.html Python for 循环语句 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串. 语法: for循环的语法格式如下: for iterating_var in sequence: statements(s) 流程图: 实例: 实例 #!/usr/bin/python # -*- coding: UTF-8 -*- for letter in 'Python': #