大家在中学就已经学过变量的概念了。例如:我们令 x = 100,则可以推出 x*2 = 200

试试下面这段 Python 代码

 import turtle

 turtle.shape("turtle")
x = 100
turtle.forward(x)
turtle.left(45)
turtle.forward(2*x) turtle.exitonclick()

运行上面的代码,小海龟将画出下面的图案

x = 100 声明了变量 x,并将它赋值为 100,用大家熟悉的中学数学语言来说,就是“令 x 等于 100”

接下来的代码中 turtle.forward(x) 就是让海龟前进 x 个单位的距离,由于前面已经将 x 赋值为 100,所以实际上就是让海龟前进 100 个单位的距离(图像中那条较短的水平线)

类似地 turtle.forward(2*x) 就是让海龟前进 2 倍的 x 个单位的距离,即前进 2 倍的 100 个单位的距离,最终海龟会向前爬行 2 x 100 = 200 个单位的距离 (图像中指向右上方的那条较长的斜线)

【提示】

  • Python (以及大多数编程语言) 中用 * 表示数学的乘法运算,以免和字母 x 相混淆

与中学数学不同的是,Python 中的变量不仅可以用来表示数字,还可以用来表示各种非数字的东西。例如,通过  ipaomi = turtle  你可以将咪博士变身为一只海龟,然后你就可以用 ipaomi 这个变量控制海龟画图啦。

下面这段代码,画出来的图像和刚才是一样的,不同的是我们将一只海龟赋值给了变量 ipaomi

 import turtle

 ipaomi = turtle
ipaomi.shape("turtle")
x = 100
ipaomi.forward(x)
ipaomi.left(45)
ipaomi.forward(2*x) ipaomi.exitonclick()

【练习】

尝试画个房子(使用变量来完成,尝试调整变量的值,绘制出不同大小的房子)

【提示】

  • 你可能会需要用到开根号的运算,引入 math 模块,然后使用 math 模块的 sqrt 方法可以进行开根号的运算。
  • 例如,下面的代码,计算 5 的平方根,并将计算结果赋值给变量 x
 import math

 x = math.sqrt(5)

【原文链接】 http://www.ipaomi.com/2017/11/15/python-零基础-快速入门-趣味教程-咪博士-海龟绘图-turtle-2-变/

Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 2. 变量的更多相关文章

  1. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 7. 条件循环

    条件循环能够让程序在条件成立时(即为真时)重复执行循环体中的语句.如果条件一直成立(即永远不会为假),则循环会一直进行下去,不会停止.如果初始时,条件不成立,则循环 1 次也不会执行.Python 中 ...

  2. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 6. 条件

    前面的教程中,我们已经可以让小海龟绘制出各种图形了.但是,所有绘图的代码都是预先编好的,程序一旦运行起来,运行结果(绘制的图形)就是固定不变的.这一节中,咪博士将教大家如何让海龟响应用户的输入. im ...

  3. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 4. 函数

    什么样的程序员才是优秀的程序员?咪博士认为“慵懒”的程序员才是真正优秀的程序员.听起来不合逻辑?真正优秀的程序员知道如何高效地工作,而不是用不止境的加班来完成工作任务.函数便是程序员高效工作的利器之一 ...

  4. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 3. 循环

    在前面的教程中,咪博士留了一道练习题给大家—-画正方形,相信聪明的你应该已经画出来了. 下面是咪博士实现的代码. 是不是跟你的代码很像呢? import turtle turtle.forward(2 ...

  5. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 1. 神秘朋友

    Python (Windows 下) 自带了一个非常有趣的 海龟绘图程序 (turtle),它是本系列课程的主角. 在 PyCharm 中,新建一个项目,然后在代码编辑器中输入 import turt ...

  6. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 0. 准备工作

    一.关于 Python Python 是全球使用人数增长最快的编程语言!它易于入门.功能强大,从 Web 后端 到 数据分析.人工智能,到处都能看到 Python 的身影. Python 有两个主要的 ...

  7. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 5. 参数

    上一个教程中,咪博士带大家学习了函数的使用.例如,line_without_moving 函数,可以让海龟先画出一条线段,然后再回来起点. def line_without_moving(): tur ...

  8. Python 零基础快速入门!

    “人生苦短,我学python”是编程届的名言.用python写小脚本的便捷性,让很多其他语言的学习者把python当作辅助语言.拥有了某一个语言的功底,再来学习另外一种语言应该是十分快速的.编程理念都 ...

  9. 序言 - PHP零基础快速入门

    我为什么要写<PHP零基础快速入门>? 原因: PHP 真心简单,适合零基础的人快速入门掌握,身边的人学习一两周上手开发的比比皆是: 市面上的文章或书籍对初学者并不友好,多半枯燥乏味,我相 ...

随机推荐

  1. QGis C++ 开发之图层分类显示

    开发环境:Win10 + VS2010 + Qt 4.8.6 + QGis 2.14.4 简单介绍下如何用C++方式实现QGis中图层分类显示的方法. 要实现图层的分类显示主要会用到QgsCatego ...

  2. C. Permutation Cycle

    For a permutation P[1... N] of integers from 1 to N, function f is defined as follows: Let g(i) be t ...

  3. 简单直白的去理解AOP,了解Spring AOP,使用 @AspectJ - 读书笔记

    AOP = Aspect Oriental Programing  面向切面编程 文章里不讲AOP术语,什么连接点.切点.切面什么的,这玩意太绕,记不住也罢.旨在以简单.直白的方式理解AOP,理解Sp ...

  4. hung task机制

    最近在修改内核源码的时候一直出现格式化磁盘的时候,进程会出现状态D,看内核日志会看到如下信息: INFO: task filebench: blocked seconds. Oct :: localh ...

  5. 20155302《网络对抗》Exp8 Web基础

    20155302<网络对抗>Exp8 Web基础 实验内容 (1).Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个 ...

  6. 【SP1811】LCS - Longest Common Substring

    [SP1811]LCS - Longest Common Substring 题面 洛谷 题解 建好后缀自动机后从初始状态沿着现在的边匹配, 如果失配则跳它的后缀链接,因为你跳后缀链接到达的\(End ...

  7. libgdx学习记录21——Box2d物理引擎之碰撞Contact、冲量Impulse、关节Joint

    Box2d中,物体可以接受力(Force).冲量(Impulse)和扭矩(Torque).这些物理元素都能改变物体的运动形式,并且默认都会唤醒物体,当然只是针对动态物体. 力是一个持久的效果,通过Bo ...

  8. MySQL在x64系统上1067问题解决

    最近一个项目需要用到MYSQL,因为以前也弄过,所以就没怎么多想,直接下一个完事了.于是乎果断上官方网站下了一个installer(5.26),修改了一下默认位置和配置,然后一路next,最后在配置完 ...

  9. Spring+SpringMVC+MyBatis+easyUI整合优化篇(一)Java语言中System.out.print与Log的比较

    作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. 前言 距离上一次更新博客有一段时间了,主要是因为最近有开发任务,另外 ...

  10. 深入了解Kubernetes REST API的工作方式

    关于Kubernetes REST API的工作方式: 在哪里以及如何定义从REST路径到处理REST调用的函数的映射? 与etcd的交互发生在哪里? 从客户端发出请求到保存在etcd中对象的端到端路 ...