zl程序教程

您现在的位置是:首页 >  后端

当前栏目

《Python参考手册(第4版•修订版)》——1.10 迭代与循环

Python循环迭代 修订版 1.10 参考手册
2023-09-11 14:17:33 时间

本节书摘来自异步社区《Python参考手册(第4版•修订版)》一书中的第1章,第1.10节,作者David M. Beazley,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.10 迭代与循环

最常用的循环结构是for语句,它可以用来对容器成员进行迭代操作。迭代是Python中内涵最丰富的功能之一。但最常见的迭代形式是简单循环访问一个序列(如字符串、列表或元组)的所有成员,例如:

for n in [1,2,3,4,5,6,7,8,9]: 

 print "2 to the %d power is %d" % (n, 2**n)

在这个例子中,每次迭代都会将列表[1,2,3,4,...,9]中的下一个值赋给变量n。因为在整数范围内执行循环十分常见,为此经常会使用下面的快捷方法:

for n in range(1,10):

 print "2 to the %d power is %d" % (n, 2**n)

range(i, j, [,步长])函数创建的对象表示值在i到j-1之间的整数范围。如果起始值i被省略,则认为是0。第三个参数是可选的步长值。例如:

a = range(5) # a = 0,1,2,3,4

b = range(1,8) # b = 1,2,3,4,5,6,7

c = range(0,14,3) # c = 0,3,6,9,12

d = range(8,1,-1) # d = 8,7,6,5,4,3,2

在使用range()函数时请注意,在Python 2中,它创建的值是已经用整数值完全填满的列表。当范围非常大时,这可能会在不经意间耗掉所有可用内存。因此,在老式的Python代码中,可能会看到程序员使用另一个函数xrange()。例如:

for i in xrange(100000000): # i = 0,1,2,...,99999999

 statements

进行查找时,xrange()函数创建的对象会在收到查询请求时根据需要计算它所表示的值。因此,它成为了表示极大范围整数值的首选方式。在Python 3中,xrange()函数已经更名为range(),并且已删除了老式range()函数的功能。

for语句并不仅限于处理整数序列,还可用于迭代多种对象,包括字符串、列表、字典和文件,例如:

a = "Hello World" 

# 打印出a中的每个字符

for c in a:

 print c

b = ["Dave","Mark","Ann","Phil"]

# 打印出一个列表的成员

for name in b:

 print name

c = { GOOG : 490.10, IBM : 91.50, AAPL : 123.15 }

# 打印出一个字典的所有成员

for key in c:

 print key, c[key]

# 打印一个文件中的所有行

f = open("foo.txt")

for line in f:

 print line,

for循环是Python最强大的语言特性之一,因为你可以创建自定义的迭代器对象和生成器函数,为它提供值序列。本章稍后和第6章将会讲述有关迭代器和生成器的更多内容。


《Python参考手册(第4版•修订版)》——导读 本书是Python编程语言的一份简明参考。尽管有经验的程序员也可以通过本书学习Python语言,但本书并不是一本讲述如何编程的全面教程或专著。相反,本书的目标是准确而简练地介绍Python语言核心以及Python库中最关键的部分。
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。