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

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

试试下面这段 Python 代码

1 import turtle
2
3 turtle.shape("turtle")
4 x = 100
5 turtle.forward(x)
6 turtle.left(45)
7 turtle.forward(2*x)
8
9 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

 1 import turtle
 2
 3 ipaomi = turtle
 4 ipaomi.shape("turtle")
 5 x = 100
 6 ipaomi.forward(x)
 7 ipaomi.left(45)
 8 ipaomi.forward(2*x)
 9
10 ipaomi.exitonclick()

【练习】

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

【提示】

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

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

时间: 2024-10-14 11:34:31

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

零基础快速入门web学习路线(含视频教程)

下面小编专门为广大web学习爱好者汇总了一条完整的自学线路:零基础快速入门web学习路线(含视频教程)(绝对纯干货)适合初学者的最新WEB前端学习路线汇总! 在当下来说web前端开发工程师可谓是高福利.高薪水的职业了.所以现在学习web前端开发的技术人员也是日益增多了,但是在学习web前端开发中盲目的去学习而没有一个完整的思路和学习路线也是不行的. 成为一个合格的web前端开发工程师的具备什么条件? 熟练的掌握HTML.CSS.JS.JQ等最基本的技术. 现在,只掌握这些已经远远不够了.无论是开

小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1、SpringBoot2.x课程介绍和高手系列知识点

1 ======================1.零基础快速入门SpringBoot2.0 5节课 =========================== 1.SpringBoot2.x课程全套介绍和高手系列知识点     简介:介绍SpringBoot2.x课程大纲章节         java基础,jdk环境,maven基础 2.SpringBoot2.x依赖环境和版本新特性说明 简介:讲解新版本依赖环境和springboot2新特性概述 1.依赖版本jdk8以上, Springboot2

零基础快速入门SpringBoot2.0教程 (四)

一.JMS介绍和使用场景及基础编程模型简介:讲解什么是小写队列,JMS的基础知识和使用场景 1.什么是JMS: Java消息服务(Java Message Service),Java平台中关于面向消息中间件的接口 2.JMS是一种与厂商无关的 API,用来访问消息收发系统消息,它类似于JDBC(Java Database Connectivity).这里,JDBC 是可以用来访问许多不同关系数据库的 API 3.使用场景: 1)跨平台 2)多语言 3)多项目 4)解耦 5)分布式事务 6)流量控

零基础快速入门SpringBoot2.0 教程(二)

一.SpringBoot2.x使用Dev-tool热部署简介:介绍什么是热部署,使用springboot结合dev-tool工具,快速加载启动应用 官方地址:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#using-boot-devtools 核心依赖包: <dependency> <groupId>org.springframework.boot</gro

Kubernetes零基础快速入门!初学者必看!

起源 Kubernetes 源自于 google 内部的服务编排系统 - borg,诞生于2014年.它汲取了google 十五年生产环境的经验积累,并融合了社区优秀的idea和实践经验. 名字 Kubernetes 这个名字,起源于古希腊,是舵手的意思,所以它的 logo 即像一张渔网又像一个罗盘,谷歌选择这个名字还有一个深意:既然docker把自己比作一只鲸鱼,驮着集装箱,在大海上遨游,google 就要用Kubernetes去掌握大航海时代的话语权,去捕获和指引着这条鲸鱼按照主人设定的路线

零基础快速入门SpringBoot2.0 (一)

一.SpringBoot2.x依赖环境和版本新特性说明 简介:讲解新版本依赖环境和springboot2新特性概述 1.依赖版本jdk8以上, Springboot2.x用JDK8, 因为底层是 Spring framework5, 2.安装maven最新版本,maven3.2以上版本,下载地址 :https://maven.apache.org/download.cgi 3.Eclipse或者IDE 4.新特性 5.翻译工具:https://translate.google.cn/ 6.spr

零基础快速入门Java的秘诀

刚开始学习Java时要端正自己的学习的目标和态度,明确学习Java基础重点要做什么. 首先第一点,Java基础的学习,基础很重要,基础好地基牢,才能爬的高! 大家要从以下4个方向努力: 代码能力:一定要敲代码,不管多简单的代码,一定要自己敲一遍. 面向对象分析能力:Java是面向对象的语言,面向对象理解的越深刻,Java基础掌握的越好,是核心的能力. 内存底层和源码分析习惯:刚开始学习的时候也要了解Java底层是如何运行的,养成看源码的习惯,进步会很快. 调试和查错能力:尤其在工作中,特别重要.

[易学易懂系列|rustlang语言|零基础|快速入门|(12)]

有意思的基础知识 Enums 今天我们来讲讲枚举. 在数学和计算机科学理论中,一个集的枚举是列出某些有穷序列集的所有成员的程序,或者是一种特定类型对象的计数.这两种类型经常(但不总是)重叠. 是一个被命名的整型常数的集合,枚举在日常生活中很常见,例如表示星期的SUNDAY.MONDAY.TUESDAY.WEDNESDAY.THURSDAY.FRIDAY.SATURDAY就是一个枚举. 如下定义: enum Day { Sunday, Monday, Tuesday, Wednesday, Thu

[易学易懂系列|rustlang语言|零基础|快速入门|(13)]

有意思的基础知识 Generics泛型 我们今天来看看泛型. 什么是泛型? 我们来看看这样的情景: 我们要写一个函数,这个函数可以处理不同类型的值,但这个值的类型,在运行时,才由调用者确定. 我们不可能在函数方法中,一开始就写死. 那要什么办? 用泛型. 比如:用x : T替换x : u8 我们来看看例子: 泛型函数: fn takes_anything<T>(x: T) { // x has type T, T is a generic type } fn takes_two_of_the_