python for循环

来源:互联网 发布:linux安全维护 编辑:程序博客网 时间:2024/06/05 19:55

python提供的for语句,可以用在列表解析和生成器表达式中,它会自动地调用迭代器的next()方法,捕获StopIteration异常并结束循环(所有这一切都是在内部发生的)。

大部分编程语言提供的for循环,通常只接受一个计数器变量,且该变量必须为数字,循环每执行一次,计算器值就改变一次(每次改变的量相同)。python,for循环由于能够直接对序列进行循环,因此python的for循环要比那些传统的for循环更加灵活。

一般语法

for循环会访问一个可迭代对象(例如序列或是迭代器)中的所有元素,并在所有条目都处理过后 结束循环,它的语法如下:

for iter_var in iterable:    suite_to_repeat
每次循环,iter_var迭代变量被设置为可迭代对象(序列、迭代器或其他支持迭代的对象)的当前元素,提供给suite_to_repeat语句块使用。

用于序列类型

用for循环迭代不同的序列对象。样例将涵盖字符串、列表及元组。

for eachLetter in 'Names':    print 'current letter: ', eachLetter



1. 通过序列项迭代

nameList=["Walter", "Nicole", "Steven", "Henry"]for eachName in nameList:    print eachName


每次迭代,eachName变量都被设置为列表中特定某个元素。

2. 通过序列索引迭代

nameList=["Walter", "Nicole", "Steven", "Henry"]for nameIndex in range(len(nameList)):    print nameList[nameIndex]


直接迭代序列要比通过索引迭代快。

3. 使用项和索引迭代

两全其美的办法是使用内建的enumerate()函数。

nameList=["Walter", "Nicole", "Steven", "Henry"]for i, eachName in enumerate(nameList):    print "%d %s " % (i+1,eachName)






#演示用for循环操作字符串word=raw_input("Enter a word: ")print("\nHere's each letter in your word:")for letter in word:    print(letter)
输出结果:


for i in range(10):    print(i,end=" ")

for i in range(0,50,5):    print(i,end=" ")
输出:


for i in range(10,0,-1):    print(i,end=" ")
输出:





0 0
原创粉丝点击