控制流之for
for..in是另外一个循环语句,它在一序列的对象上 递归 即逐一使用队列中的每个项目。我们会在后面的章节中更加详细地学习序列。
使用for语句
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例6.3 使用for语句
#!/usr/bin/python
#Filename:for.py
for i in range(1,5) :
print i
else :
print 'loop is done'
它如何工作
在这个程序中,我们打印了一个 序列 的数。我们使用内建的range函数生成这个数的序列。
我们所做的只是提供两个数,range返回一个序列的数。这个序列从第一个数开始到第二个数为止。例如,range(1,5)给出序列[1, 2, 3, 4]。默认地,range的步长为1。如果我们为range提供第三个数,那么它将成为步长。例如,range(1,5,2)给出[1,3]。记住,range 向上 延伸到第二个数,即它不包含第二个数。
for循环在这个范围内递归——for i in range(1,5)等价于for i in [1, 2, 3, 4],这就如同把序列中的每个数(或对象)赋值给i,一次一个,然后以每个i的值执行这个程序块。在这个例子中,我们只是打印i的值。
记住,else部分是可选的。如果包含else,它总是在for循环结束后执行一次,除非遇到break语句。
记住,for..in循环对于任何序列都适用。这里我们使用的是一个由内建range函数生成的数的列表,但是广义说来我们可以使用任何种类的由任何对象组成的序列!我们会在后面的章节中详细探索这个观点。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
给C/C++/Java/C#程序员的注释Python的for循环从根本上不同于C/C++的for循环。C#程序员会注意到Python的for循环与C#中的foreach循环十分类似。Java程序员会注意到它与Java 1.5中的for (int i : IntArray)相似。在C/C++中,如果你想要写for (int i = 0; i < 5; i++),那么用Python,你写成for i in range(0,5)。你会注意到,Python的for循环更加简单、明白、不易出错
最新文章
- NancyFX 简介
- linux 常用命令学习记录
- AspNetPager分页控件使用方法
- MS10048依旧是Windows 2003 x86 的杀器
- EF扩展库(批量操作)
- Android之ScrollView嵌套ListView冲突
- JS_01_入门学习
- POJ 3304 Segments (直线与线段是否相交)
- 新浪IP归属地API
- 面向接口编程实现不改代码实现Redis单机/集群之间的切换
- 浅谈JS中的浅拷贝与深拷贝
- 将PPT文件内容转换为图片放在Email邮件正文中发送
- idea 找不到classpath 为resource下的xml
- 在 ASP.NET Core 中集成 Skywalking APM
- L1-049 天梯赛座位分配​​​​​​​
- 随手记一 2018/04/23 session和cookie的区别
- VLAN报文和非VLAN以太网报文的区别
- Js调试中不得不知的Console
- 键盘监听事件KeyListener
- Python面向对象-day07