Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 3. 循环
来源:互联网 发布:java线程池创建的方式 编辑:程序博客网 时间:2024/05/05 19:05
在前面的教程中,咪博士留了一道练习题给大家—-画正方形,相信聪明的你应该已经画出来了。
下面是咪博士实现的代码。 是不是跟你的代码很像呢?
import turtle turtle.forward(200)turtle.left(90) turtle.forward(200)turtle.left(90) turtle.forward(200)turtle.left(90) turtle.forward(200)turtle.left(90) turtle.exitonclick()
虽然这段代码可以成功绘制出一个正方形,但它还有些不足的地方。仔细观察,我们发现,有许多代码是重复的:第 3, 4 行的代码重复了 4 次。在编程的时候,我们要尽量避免重复的代码。遇到需要重复执行的语句,我们应当使用循环来实现。
下面是咪博士用循环重新实现的画正方形的功能。怎么样,代码是不是简洁许多了呢?但是好像看不太懂了?
import turtle for i in range(4): turtle.forward(200) turtle.left(90) turtle.exitonclick()
别急,听咪博士为你讲解。
第 3, 4, 5 行就是一个循环,用于执行重复的语句。
其中,第 4, 5 行的代码和原来的版本”几乎”是一样的,它们是需要重复执行的语句,我们称之为循环体。不过,一定要注意的是,同原来的版本相比,第 4, 5 行的代码不是顶格写的,而是向右缩进了一些(所以是“几乎”一样,而不是完全相同),Python 正是根据缩进来推断哪些语句属于循环体。通常我们使用连续的 4 个空格符来表示一级的缩进。
第 3 行的代码是一个 for 循环。它的作用是重复执行循环体中的语句。可是要重复执行多少次呢?答案是 4 次。为什么?我们先来看 range 函数,range(n) 相当于产生一个从 0 到 n-1 的等差数列, 即 0, 1, 2…, n-1,总共 n 个数字。所以,这里的 range(4) 相当于数列 0, 1, 2, 3,总共是 4 个数字。fori inrange(4): 的意思就是每次循环从数列中取出 1 个数字,赋值给变量 i,直至取完数列中所有的数字,即
- 第 1 次循环的时候,i = 0
- 第 2 次循环的时候,i = 1
- 第 3 次循环的时候,i = 2
- 第 4 次循环的时候,i = 3
然后呢?然后循环就结束了,因为 range(4) 对应的数列只有 0, 1, 2, 3 这 4 个数字。这 4 个数字通过 4 次循环已经全部取完了。没数字可取了,所以循环也就结束了。因此,第 3 行的代码 fori inrange(4): 将执行 4 次循环体(第 4, 5 行的代码)
最后,咪博士给大家展示一个更高级一点的例子—-嵌套循环,即循环体里面还有循环!
import turtle for i in range(16): turtle.left(22.5) for j in range(4): turtle.forward(200) turtle.left(90) turtle.exitonclick()
【练习】
- 先不要运行代码,尝试分析一下,上面这段代码会绘制出什么样的图案?
- 让代码跑起来,看看你的分析是否正确。
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 3. 循环
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 7. 条件循环
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 0. 准备工作
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 1. 神秘朋友
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 2. 变量
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 4. 函数
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 5. 参数
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 6. 条件
- python海龟turtle绘图实例教程
- 海龟绘图-python turtle学习笔记1
- 海龟绘图-python turtle学习笔记2
- 海龟绘图-python turtle学习笔记3
- Python-Turtle海龟作画
- python海龟绘图实例教程
- Python 海龟绘图
- python海龟绘图实例教程
- python海龟turtle分形树(表白用)
- Python的turtle 绘图
- Hive安装及启动异常解决
- Ajax的应用和理解
- Linux Android studio配置任意目录终端启动和别名启动的方法
- java Graphics做验证码出现问题解决
- java8新的时间日期库及使用示例
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 3. 循环
- js中this关键字
- 技术分享连载(五十七)
- windows7 64bit下安装Tensorflow+VS2013+CUDA GPU加速
- AJAX
- SourceTree 免登录跳过初始设置
- e企播报:AWS的操作与SC17的新势力
- 一个比较好用的zip压缩库,pclzip可以直接压缩本站全部文件
- Java面试知识点个人总结(1)