《像计算机科学家一样思考Python》——4.2 简单重复

本节书摘来自异步社区《像计算机科学家一样思考Python》一书中的第4章,第4.2节,作者[美]Allen B. Downey,赵普明 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

4.2 简单重复

你可能会写下如下代码(除去新建TurtleWorld和等待用户的操作外):

fd(bob, 100)
lt(bob)

fd(bob, 100)
lt(bob)

fd(bob, 100)
lt(bob)

fd(bob, 100)

使用for语句,可以更紧凑地实现同样功能。把下面的例子加到mypolygon.py中,并再运行一次:

for i in range(4):
   print 'Hello!'

你可能会看到如下输出:

Hello!
Hello!
Hello!
Hello!

这是for语句的最简单用法,后面我们会看到更多的用法。但这样已经足够重写刚才的画正方形的程序了。请重写后再接着阅读。

下面是使用for语句绘制正方形的程序:

for i in range(4):
  fd(bob, 100)
  lt(bob)

for语句的语法和函数定义类似。它也有一个以冒号结束的语句头,并有一个缩进的语句体。语句体可以包含任意数量的语句。

for语句有时被称为循环(loop),因为执行流程会遍历语句体,之后从语句体的最开头重新循环执行。在这个例子里,语句体执行了4次。

这个版本的代码和之前的绘制正方形的代码其实还稍有不同,因为在最后一次循环后它多做了一次左转。多余的左转稍微多消耗了点时间,但因为每次循环做的事情都一样,也让代码更简练。这个版本的代码还有一个效果,程序执行完之后,乌龟会回归到初始的位置,并朝向初始相同的方向。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值