第八章 转圈圈
2016-09-27 15:35
148 查看
8.1 计数循环
第一种循环为计数循环,也可以称为for循环for looper in [1,2,3,4,5] print "Hello" #结果 >>>Hello >>>Hello >>>Hello >>>Hello >>>Hello >>>
第一行(for looper in [1,2,3,4,5])代码的意思是:
(1)looper 值从1开始(所以looper=1)
(2)对应列表中的每一个值,这个循环会把下一个指令块中的所有工作完成一次。(列表就是中括号中的那些数)
(3)每次执行循环时,变量looper会赋为这个列表的下一个值。
失控的循环
循环失控的时候(无限循环),CTRL+C停止python程序。8.2 使用计数循环
打印8的乘法表for looper in [1,2,3,4,5] print looper,"times 8 =",looper*8 #结果 >>> 1 time 8 = 8 2 time 8 = 16 3 time 8 = 24 4 time 8 = 32 5 time 8 = 40 >>>
8.3 一条捷径——range()
range()函数,只输入起始值和结束值,然后会创建一个ieliebiao,包含某个范围内的数。值得注意的是:range(),它会提供一个数字列表,从给定的第一个数开始,在给定的最后一个数之前结束。
>>>print range(1,5) [1,2,3,4]
for looper in range(1,5) print looper,'time 8 =",looper*8
range简写
for i in range(5): #与下述语言等价 for i in range(0,5):
8.5 按步长计数
range()可以提供一个额外的参数,可以把每次增加的数从1变成指定数>>>for i in range(1,10,2): print i 1 3 5 7 9
range()在参数为负数时候,也可以实现反向计数
>>>for i in range(10,1,-1): print i 10 9 8 7 6 5 4 3 2
import time for i range(10,0,-1): print i time.sleep(1)#等待一秒 print "BLAST OFF!"
8.6 没有数字的计数
循环迭代里的列表,不一定是数字列表,字符串列表也可以进行技术循环for cool_guy in ["Spongbob","Spiderman","Justin Timberlake","My Dad"]: print cool_guy,"is the coolest guy ever!"
8.7 关于这个问题
(问题是:如果我们无法提前知道需要多少次迭代呢?如果没有可用的值列表呢?)这就涉及到第二种循环,称为while循环或者条件循环。
print "Type 3 to continue, anything else to quit." someUnput = raw_input() while someInput() while someInput == '3'#只要someInput='3'就一直循环 print "Thank you for the 3. Very kind of you." print "Type 3 to continue, anything else to quit." someInput=raw_input() print "That's not 3, so I'm quitting now."
8.8 跳出循环——break和continue
如果希望在中间离开循环,也就是for循环结束计数之前,或者while循环找到结束条件之前。有两种方法来做到:可以用continue直接跳到循环的下一次迭代,或者用break完全终止循环
提前跳转——continue
for i in range(1,6) print i print 'i=',i, print 'Hello,how', if i==3: continue print 'are you today?'
运行程序时,输出如下:
i=1 Hello how are you today? i=2 Hello how are you today? i=3 Hello how#i=3时候循环体未接触,没有输出"are you today?",直接进入下一次循 4000 环。 i=4 Hello how are you today? i=5 Hello how are you today?
跳出——break
for i in range(1,6) print i print 'i=',i, print 'Hello,how', if i==3: break print 'are you today?'
运行程序时,输出如下:
i=1 Hello how are you today? i=2 Hello how are you today? i=3 Hello how#i=3时候直接结束整体循环
相关文章推荐
- Android Camera2 API Explained
- 3.rabbitmq之发布订阅
- Maven项目中War包的打包及依赖方式
- 常见浏览器兼容性问题与解决方案
- android 本地推送之 同时推送
- 在html页面显示pdf,实现pdf的预览和下载
- 算法-第四版-练习1.2.17解答
- 自学mysql数据库之函数(2)
- poj 1088 滑雪(记忆化搜索 || DP)
- href="#"不跳转到页面顶端
- 抽象类及接口(两者的区别)
- 实验4 利用单臂路由实现vlan间路由
- 微信企业号开发[二]——获取用户信息
- [ORACLE]杀死伪科学──也谈count(*)和count(1) (
- Centos 6.5 在线安装 Mysql 5.7.15
- asp.net mvc signalr简单聊天室制作过程分析
- Js Event Loop
- 该版本的 %1 与您运行的 Windows 版本不兼容
- Android Studio2.0 教程从入门到精通MAC版 - 入门篇
- WPF 详解模板