零基础学编程018:条件语句

学习了《零基础学编程017:画出我的公众号LOGO》之后,可以用几行代码,画出一个螺旋渐开线。

from turtle import *
for i in range(365) :
    forward(1.01 ** i)
    left(9)   

forward(1.01 ** i) 表示每天进步一点点,从画出的圆弧的半径上大致可以看出进步的效果在逐步显现,但如何显示出每周的进步呢?我们可以在每周7天的时候画出一个标记来,只需增加2行代码即可。

from turtle import *
for i in range(365) :
    forward(1.01 ** i)
    left(9)
    if(i % 7 == 0) :
        stamp()

程序的三种结构:顺序循环分支

顺序结构非常容易理解,按照代码出现的先后顺序执行,先执行forward( )再执行left( ),一步一步地顺序执行,大部分语句都是这样排列的。

循环结构可以让计算机做重复的事,在Python中就是for语句,在《零基础学编程007:FOR循环》里介绍过。

分支结构可以让计算机在满足某种条件时,或者达到某种状态的时候,执行指定的任务。

在这里加了2行语句:

if(i % 7 == 0) :
    stamp()

关于i % 7 == 0 这个表达式暂时不用过多地理解,它表示的意思就是i是否能够被7整除时,即i为0,7,14,21......时。如果把上面的代码翻译为汉语,可以这样对应:

 if      (i % 7 == 0)     :
 如果     i能够被7整除时     执行下面的语句

而stamp()就是满足条件时要执行的语句,这个函数的作用是画出一个小标记,在turtle画图系统中默认是画一个小三角形。整个代码就会每7天显示出一个三角形,可以看出每周的进步是不是越来越大?

小结:实际上一个程序主要就这三种结构:顺序、循环和分支。将这些结构组合起来,就会非常强大,可以完成各种各样的任务。

练习:试着在for语句之前加上一行语句shape("turtle")看看会出现什么图形?

--- END ---

原文发布于微信公众号 - 申龙斌的程序人生(slbGTD)

原文发表时间:2017-01-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏企鹅号快讯

入门新手是用Python2还是Pythony3?不同在哪里?

1. print不再是句子,而是函数,比方本来是 print 'abc' 现在是 print('abc')可是 python2.6+ 能够运用 from __f...

1828
来自专栏web前端教室

javasciprt 排序 之 冒泡排序

冒泡排序哈,最简单,也最慢,据说长度小于7位是最佳的。具体是不是不知道,我没测过。 算法这里大家不要学我,我学算法和排序,完全是不求甚解的学法。就是我只要知道...

1798
来自专栏奇点大数据

算法之旅(2)——朴素的存取

上次我们说到算法最基本的处理规则和算法在计算机底层所藉由的工作方式。这次我们来说说计算机中最简单的算法,最朴素的数据存取。 也许有的朋友觉得这种问题太底层,简直...

2265
来自专栏IT可乐

深入理解计算机系统(3.1)------汇编语言和机器语言

  《深入理解计算机系统》第三章——程序的机器级表示。作者首先讲解了汇编代码和机器代码的关系,阐述了汇编承上启下的作用;接着从机器语言IA32着手,分别讲述了如...

1859
来自专栏take time, save time

你所能用到的数据结构(三)

三、对于效率提高的初次尝试     对于最自然的几种排序算法,数学家们开始思考如何提高排序算法的效率,可以通过数学证明出来如果想达到这个目的,必须想办法将相距...

2657
来自专栏数据分析

[数据清洗]-看上去一样的数字

数据不正确(格式不正确,数据不准确,数据缺失)我们做什么都是徒劳。数据清洗时数据分析的第一步,也是最耗时的一步。 数据清洗很枯燥,但是随着数据清理技巧越来越熟练...

2673
来自专栏数据的力量

一大波常用函数公式,值得收藏!

1334
来自专栏HansBug's Lab

算法模板——并查集 2(支持快速即时查询本连通块内容,纯原创!)

实现功能:输入N,现在有N个数;接下来输入任意行,如果是"1 x y"则表示把x和y所在的块合并;如果是"2 x"则表示输出x所在的块的全部内容 原理:其实主要...

2856
来自专栏web前端教室

【视频】- 5分钟学习<函数式编程>

温馨提示:视频请点此观看 // 视频文字版: JavaScript 函数式编程是一个存在了很久的话题, 现在ES6语法对于函数式编程更为友好,所以开始变的更...

2036
来自专栏数据结构与算法

主定理与时间复杂度

只好在网上找了一篇看起来不怎么严谨的博客,不过算出来的是对的?那就默认是对的吧qwq

431

扫描关注云+社区