每个人的生活和工作都充满了循环,很多时候,循环意味着重复和枯燥。比如你要手动给300个人发信息,比如她要一遍一遍地给不认真的人费劲口舌解释同样的事情,又比如他一成不变、如同一潭死水般的生活。

一成不变的生活终归需要你自己去打破循环,但工作的事,就大可让计算机帮一帮我们了。与人类不同,计算机不怕苦也不怕累,无聊的事情可以重复上千遍,只要能追寻到你想要的答案。

这恰恰就是编程解放人类的地方。比如你需要下载很多很多张图片,本来你是要手动操作的,而计算机通过【循环】,就可以依照某些规则,帮你一张一张地下载图片,你在一旁歇着就好。计算机干重复性的工作比你拿手。

现在你再看“循环”这两个字,是不是跟开始不太一样了?

为什么计算机就特别擅长做重复性工作呢?注意,是“超擅长、速度超快”,而不只是“能干活、不抱怨”。

究其原理,其实是因为代码中的【循环语句】,让计算机能够重复性地、自动地执行指令。

要实现“重复、自动地执行代码”,有两种循环语句可供我们选择使用:一种是for…in…循环语句,另一种是while循环语句。

话不多说,我们先一起来看看第一种循环的方式:for…in…循环,它也被简称为for循环。

for…in…循环语句
还记得前一关里,班主任点名的例子吗?本来要重复8次才能完成的任务,最后变成了3行代码。


student = ['党志文', '浦欣然', '罗鸿朗', '姜信然', '居俊德', '宿鸿福', '张成和', '林景辉']
for i in student:print(i+'在不在?')

这里的第2-3行就是for循环。

例子:


for i in [1,2,3,4,5,6,7,8]:print(i)#有一群数字在排队办业务,也就是列表[1,2,3,4,5,6,7,8]
#它们中的每一个被叫到号的时候(for i in),就轮流进去一个空房间办业务
#每一个数字进去房间之后,都对计算机说:“喂,我要办这个业务:帮忙把我自己打印出来”,也就是print(i)
#然后计算机忠实的为每一个数字提供了打印服务,将1,2,3,4,5,6,7,8都打印在了屏幕上

i的取值不唯一,这个可以自己定的

请问以下哪个选项的数据不能放在for i in a:循环中?


a=[1,2,3,4,5,6,7,8]a=3    #字典、列表和字符串'吴承恩'都是一群排队办业务的人,但a = 3并不是。a={"师傅":'唐僧',"大师兄":'孙悟空',"二师兄":'猪八戒',"三师弟":'沙和尚'}a='吴承恩'    #'吴承恩'三个字就像一家三口,但走进空房间办业务时,这家人是可以一个一个进去的。

for i in '吴承恩':print(i)#吴
#承
#恩

range()函数


for i in range(4):print(i)#0
#1
#2
#3#运行后,你看到了整数0,1,2,是不是?使用range(x)函数,就可以生成一个从0到x-1的整数序列。

它还有更多用法,再来看这段代码,并运行:

for i in range(15,19):print(i)#15
#16
#17
#18#使用range(a,b) 函数,你可以生成了一个【取头不取尾】的整数序列。
for i in range(3):print('我很棒')#我很棒
#我很棒
#我很棒#重要的事情说三遍,哈哈。像这样,有了range()函数之后,当你想把一段代码固定重复n次时,就可以直接使用for i in range(n)解决问题。

for循环在字典中的使用:


a={"师傅":'唐僧',"大师兄":'孙悟空',"二师兄":'猪八戒',"三师弟":'沙和尚'}for i in a:print(a[i])    #通过循环把值取出来#唐僧
#孙悟空
#猪八戒
#沙和尚

while循环


a = 0
while a < 6:a = a + 1print(a)#1
#2
#3
#4
#5
#6

a = 0                #先定义变量a,并赋值
while a < 5:         #设定一个放行条件:a要小于5,才能办事a = a + 1  # 满足条件时,就办事:将a+1print(a)   # 继续办事:将a+1的结果打印出来 

while True 执行循环,while False不执行循环


password = ''  # 变量password用来保存输入的密码while password != '816':password = input('请尝试输入密码:')print('欢迎回家!')

执行结果

请尝试输入密码:816
欢迎回家!

for循环和whlie循环最大的区别在于【循环的工作量是否确定】,for循环就像空房间依次办理业务,直到把【所有工作做完】才下班。但while循环就像哨卡放行,【满足条件就一直工作】,直到不满足条件就关闭哨卡。

所以说,当我们【工作量确定】的时候,我们就可以让for循环来完成重复性工作。反之,要【工作量不确定时】可以让while循环来工作:

# 适合用for...in...循环
for i in '吴承恩':
​     print(i)# 适合用while循环
password = ''
while password != '816':
​     password = input('请尝试输入密码:')

要把字符串’吴承恩’拆成一个个字符打印出来,这件事【工作量确定】,适合用for循环。

而对于“输入密码,判断输入的密码是否正确”这件事,我们并不知道要判断几遍才能得到正确密码,所以【工作量不确定】,适合用while循环。

要多敲代码哦

python基础教程Day06相关推荐

  1. 编程入门书籍-Python基础教程(第3版)

    Python基础教程(第3版) Magnus Lie Hetland 著,袁国忠 译 ISBN:9787115474889 包装:平装 开本:16开 正文语种:中文 出版社:人民邮电出版社 出版时间: ...

  2. Python基础教程学习笔记:第一章 基础知识

    Python基础教程 第二版 学习笔记 1.python的每一个语句的后面可以添加分号也可以不添加分号:在一行有多条语句的时候,必须使用分号加以区分 2.查看Python版本号,在Dos窗口中输入&q ...

  3. python基础教程博客_python基础教程(一)

    之所以选择py交易有以下几点:1.python是胶水语言(跨平台),2.python无所不能(除了底层),3.python编写方便(notepad++等文本编辑器就能搞事情),4.渗透方面很多脚本都是 ...

  4. python基础教程第二版和第三版哪个好-python基础教程 2版和3版哪个适合新手?!...

    python基础教程 2版和3版哪个适合新手? 现在学是学python3. 两者的差异发者本身影响并不大,个别语法细微的差比如python3的print数方式使用,一些常用模块的名称差异,一些机制的差 ...

  5. python基础教程第二版答案-《Python基础教程》(第2版修订版)中要注意的地方...

    想必现在大家学习Python都会用3.0及以上的版本了,虽然2.X的版本依然很多,但是这两年随着部分开源项目不再支持2.X版本,3.X已经成为趋势. 正是在这样的大背景下,我最近用这本<Pyth ...

  6. python基础教程第三版电子版百度云-《python基础教程第三版》高清版PDF免费下载...

    下载地址1:http://t.cn/EGxO1sW Python基础教程 第3版Python简明教程书籍 Python编程从入门到实践 灵程序设计丛书 <python基础教程第三版>高清版 ...

  7. python基础教程视频(全13集)-Python基础视频教程(600集)【传智播客精品教程】...

    Python基础视频教程 初级共600节课 本套视频是传智播客紧抓未来最大趋势--人工智能,应运而生的一套Python入门视频教程,Python是学习人工智能的首选语言,而该视频是专门针对零基础的学员 ...

  8. python基础教程第三版和第二版选哪个-python基础教程 2版和3版哪个适合新手?!...

    python基础教程 2版和3版哪个适合新手? 现在学是学python3. 两者的差异发者本身影响并不大,个别语法细微的差比如python3的print数方式使用,一些常用模块的名称差异,一些机制的差 ...

  9. python基础教程第二版和第三版有什么区别-《Python基础教程》(第2版修订版)中要注意的地方...

    想必现在大家学习Python都会用3.0及以上的版本了,虽然2.X的版本依然很多,但是这两年随着部分开源项目不再支持2.X版本,3.X已经成为趋势. 正是在这样的大背景下,我最近用这本<Pyth ...

最新文章

  1. mysql的总结7--存储过程
  2. 各种操作系统ping时的TTL值
  3. VTK:图片之ImageNonMaximumSuppression
  4. ECCV 2020 亮点摘要(下)
  5. ssh key生成_Stelnet(ssh)登陆华为交换机配置教程
  6. 毕业一年多被裁,没有计算机文凭,我在两个月内搞定4份Offer,且收入翻倍
  7. mysql4.1数据库_MySQL数据库练习-4.1
  8. Vidmore Player for Mac(多功能蓝光播放器)
  9. 电子招投标系统解决方案
  10. 苏宁大数据怎么运营_苏宁智慧门店是什么?智慧门店是如何运作的?
  11. 2022年智能马桶行业发展趋势
  12. 安卓-几种查看SHA1和MD5的方法
  13. Java10-I/O
  14. 99% 的程序员想不到的一个技巧,绝对让领导眼前一亮,好感倍增!
  15. ocr文字识别软件:Readiris Corporate 17 Mac中文版
  16. 2020年396分上岸湖南大学计算机专硕考研经验分享
  17. Java实现抽奖功能
  18. 火狐浏览器打不开淘宝首页的解决办法
  19. 数学基础:反三角函数
  20. 光功率 博科交换机_希望查询7604,CE3000等交换机读取光口光功率的oid,以及电源状态的oid...

热门文章

  1. 支付宝、微信注册时间,轻松查看!
  2. php批量替换文件内容,写了个遍历目录、批量替换文件内容的类
  3. idea光标变黑,不能敲代码
  4. 通讯协议,网络通讯协议基本原理透析
  5. 微软azure服务器配置,配置持续部署 - Azure App Service | Microsoft Docs
  6. 项目中,你们如何进行需求评审?
  7. [2021-11-02] VMware 共享文件夹不显示的问题
  8. 物化视图日志结构与ORA-12034 Mview log younger than last refresh
  9. HDU2159(多重背包)
  10. vue项目中使用百度地图api完成自定义搜索功能(包含搜索详细地理位置)