Python (Windows 下) 自带了一个非常有趣的 海龟绘图程序 (turtle),它是本系列课程的主角。

在 PyCharm 中,新建一个项目,然后在代码编辑器中输入

 import turtle
turtle.shape("turtle")
turtle.exitonclick()

运行这段代码,便可以召唤出这位可爱的小精灵

上面的代码中  import turtle  用于导入模块,导入之后就可以应用模块的各种功能了

turtle.shape("turtle") 调用 turtle 的 shape 方法,用于改变海龟的显示方式(默认显示的是一个三角形的小箭头)。执行这句代码之后,turtle 显示为一只形象的小海龟。

turtle.exitonclick() 最后这句是告诉海龟保持住,直到遇到鼠标点击的时候才退出 (exit on click)。不然程序执行得太快,我们还来不及看到海龟,它就已经执行完毕并退出了。

【提示】

  • 请不要直接复制、粘贴代码,而是要对照着代码,自己在代码编辑器中一点一点地输入
  • Python 是大小写敏感的编程语言,输入代码时,请务必细心,注意字母大小写
  • Python 相比其他高级编程语言的一个特别之处,在于强制使用缩进,请不要在每行代码的开头随意添加空白字符(空格、Tab 键等)

现在小海龟位于窗体的正中央,龟头指向右边的方向。

接下来,我们尝试让海龟走两步。

关闭窗口(或点击窗体任何位置自动退出),将编辑器中的代码,更改为下面的样子

 import turtle
turtle.shape("turtle")
turtle.forward(200)
turtle.exitonclick()

运行代码,

我们看到小海龟从屏幕中心出发,沿着龟头的方向(右边),爬行(前进)了一段距离。

这次的代码,跟最开始的代码并没有太多的不同,只增加了 1 条语句 turtle.forward(200) 它的意思就是让海龟沿着当前龟头的指向,前进 200 个单位的距离。

刚才我们已经学会了如何让海龟爬行,接着我们再来看如何让海龟转身。

关闭窗口,将代码改成下面的样子,

 import turtle
turtle.shape("turtle")
turtle.left(45)
turtle.forward(200)
turtle.exitonclick()

运行之后,将显示下面的效果

这一次,在海龟出发之前(位于窗体正中央,龟头向右),我们先通过 turtle.left(45) 让海龟向左(逆时针)旋转 45 度。此时,海龟仍然位于窗体正中央,但龟头指向屏幕右上方。接着,再让海龟沿着更改后的龟头方向爬行, turtle.forward(200) ,于是就就画出了指向屏幕右上方的一条线段。

【练习】

尝试让小海龟画一个正方形

尝试画出 3 个交错叠加的正方形

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

Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 1. 神秘朋友的更多相关文章

  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) 2. 变量

    大家在中学就已经学过变量的概念了.例如:我们令 x = 100,则可以推出 x*2 = 200 试试下面这段 Python 代码 import turtle turtle.shape("tu ...

  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. Python基础(9)——类

    类的语法 类的定义 class Dog(object): print("hello,I am a dog!") d = Dog() #实例化这个类, #此时的d就是类Dog的实例化 ...

  2. Mac下FTP的使用

    高版本的mac os默认关掉了FTP服务,打开“终端”之后,可用如下命令打开: sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp. ...

  3. Android放大镜效果的简单实现

    package com.example.myapi.pictobig; import com.example.myapi.R; import android.content.Context; impo ...

  4. Android 一s个相对完整的自动升级功能实现代码

    由于项目的需要最近做了一个关于Android自动升级的功能,下面将贴出Android手机客户端的完整代码.这段代码参考别的代码居多,由于不满足需求,所以自己仅仅改了一些需要变动的内容,其他功能都是按照 ...

  5. HBase启动报错:ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is not running yet

    今天进入hbase shell中输入命令报错:ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is no ...

  6. 【webstorm】免费使用

    http://idea.imsxm.com/       测试过ok 后期追加(20180316更新为) http://idea.codebeta.cn/ 后期追加(20180502更新为) http ...

  7. BZOJ2427: [HAOI2010]软件安装 tarjan+树形背包

    分析: 一开始我以为是裸的树形背包...之后被告知这东西...可能有环...什么!有环! 有环就搞掉就就可以了...tarjan缩点...建图记得建立从i到d[i]之后跑tarjan,因为这样才能判断 ...

  8. [Baltic 2011]Lamp BZOJ2346

    分析: 建图最短路,比较裸. 我们可以考虑,如果是‘\’那么,左上连右下边权为0,左下连右上边权为1,反之亦然. 卡裸spfa,加点优化能过,我就直接改成的堆优化Dijkstra 附上代码: #inc ...

  9. Luogu P2055 [ZJOI2009]假期的宿舍

    一道网络有关的问题,还是一句话 网络流重在建模! 这里主要讲两种算法. 1.二分图匹配: 分析题意,我们可以知道题目要求是让所有留在学校的人都能有床睡 而 所有留在学校的人=本校不回家的人+外校的人: ...

  10. [CF1039D]You Are Given a Tree[贪心+根号分治]

    题意 给你\(n\)个点的树,其中一个简单路径的集合被称为\(k\)合法当且仅当树的每个节点最多属于一条路径,且每条路径包含\(k\)个节点.对于每个\(k(k \in [1,n])\),输出最多的\ ...