5.4.11Python下for循环

Posted by 撒得一地 on 2016年3月20日 in python教程

while语句非常灵活。它可以用来在任何条件为真的情况下重复执行一个代码块。一般情况下这样就够用了,但有时候比如要为一个集合(序列和其他可迭代对象)的每个元素都执行一个代码块,这时候就可以使用for循环。

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

语法:

for iterating_var in sequence:
   statements(s)

for循环流程图如下:

Python下for循环

for循环实例,循环输出列表中的每个值:

>>> words = ['I','am','a','coder']
>>> for word in words :
...     print(word)
...
I
am
a
coder

循环输出字符串中的每个字符:

>>> letters = "good day!"
>>> for letter in letters:
...     print(letter)
...
g
o
o
d

d
a
y
!

因为在for循环下,迭代某种范围的数字是很常见的,所以有时候还可以通过巧用内建函数range来使得循环输出更灵活:

>>> range(0,5)
range(0, 5)
#range(0,10)即[0,1,2,3,4]

range函数的工作方式类似于分片。它包含下限(上面例子中的0),但不包含上限(上面例子中的5)。如果希望下限为0,可以只提供上限:

>>> range(10)
range(0, 10)

下面通过range打印1到5之间的数字:

>>> for number in range(1,6):
...     print(number)
...
1
2
3
4
5

实例,通过序列索引迭代:

>>> words = ['I','am','good!']
>>> for index in range(len(words)):
...     print(words[index])
...
I
am
good!

上面中len(words)的值为3,所以for index in range(len(words))等价于for index in range(3)。

可见,for循环比while循环更简洁。如果能使用for循环,就尽量不用while循环。

上一篇:

下一篇:

相关推荐

网站地图|XML地图

Copyright © 2015-2024 技术拉近你我! All rights reserved.
闽ICP备15015576号-1 版权所有©psz.