最近,花了点时间,用python画图。

主要包括三部分,简单的静态图形,复杂的组合图形,图形动画。

(一)画静态图形

长方形,

圆,

三角形,

平行四边形,

五角星

(二)图形的组合

笑脸,

国旗,

贪吃蛇,

简笔画的鱼,

小猪佩奇

(三)图形动起来

风车,

起自行车,

吃豆人

比如,长方形代码如下:

import turtle as t
t.showturtle()
t.shape('turtle') t.fillcolor('yellow')
t.begin_fill()
t.fd(200) t.pencolor('blue')
t.left(90)
t.forward(100) t.pencolor('red')
t.left(90)
t.forward(200) t.pencolor('green')
t.left(45)
t.goto(0,0)
t.end_fill() t.hideturtle()

三角形的代码如下:

import turtle as t
t.showturtle()
t.forward(200)
t.left(120)
t.forward(200) t.left(120)
t.forward(200)
t.hideturtle()

其他代码需要的留下邮件地址,可以无偿提供。

总体上看,用python的turtle画图,不是很复杂。

  1. 首先要引入turtle库,这个库python安装的时候已经包括在安装包中,不需要安装。

    import turtle as t
  2. 设置画布大小

    可以通过turtle.screensize设置它的大小和初始位置;

    可以通过turtle.setup设置宽和高,以及矩形左上角顶点的位置。
  3. 画笔

    通过turtle.pencolor设置颜色

    通过turtle.pensize设置画笔宽度

    通过turtle.speed设置画笔移动的速度
  4. 填充

    通过turtle.fillcolor设置填充颜色

    通过turtle.begin_fill开始填充颜色

    通过turtle.end_fill完成填充
  5. 绘图

    通过turtle.fd向前移动画笔绘图

    通过turtle.bk向后移动画笔绘图

    通过turtle.right向右旋转一定角度

    通过turtle.left向左旋转一定角度

    通过turtle.goto移动到指定的位置,如果此时画笔是pendown状态,会画图

    通过turtle.pendown移动时候绘图

    通过turtle.penup抬起画笔,移动时不绘图

    通过turtle.circle画圆,或者画弧

    每个命令具体的参数,查看turtle的帮助:https://docs.python.org/zh-cn/3/library/turtle.html

下一篇,将介绍如何绘制复杂图形。

用python的turtle作图(一)静态图的更多相关文章

  1. 用python的turtle作图(二)动画吃豆人

    本文是用python的turtle作图的第二篇,通过这个例子可以了解动画的原理,用python自带的turtle库制作一些小动画. 1.问题描述 在上一篇"用python的turtle作图( ...

  2. python的turtle模块画折线图

    代码如下: import turtle yValues = [10.0,7.4,6.4,5.3,4.4,3.7,2.6] def main(): t = turtle.Turtle() t.hidet ...

  3. tensorflow 升级到1.9-rc0,生成静态图frozen graph.pb本地测试正常, 在其他版本(eg1.4版本)或者android下运行出错NodeDef mentions attr 'dilations' not in Op<name=Conv2D; signature=input:T, filter:T -> output:T; attr=T:type,allowed=[DT_

    这时节点定义找不到NodeDef attr 'dilations' not in,说明执行版本的NodeDef不在节点定义上,两个不一致,分别是执行inference的代码和生成静态图节点不一致(当然 ...

  4. 『MXNet』第六弹_Gluon性能提升 静态图 动态图 符号式编程 命令式编程

    https://www.cnblogs.com/hellcat/p/9084894.html 目录 一.符号式编程 1.命令式编程和符号式编程 2.MXNet的符号式编程 二.惰性计算 用同步函数实际 ...

  5. Dive into TensorFlow系列(1)-静态图运行原理

    接触过TensorFlow v1的朋友都知道,训练一个TF模型有三个步骤:定义输入和模型结构,创建tf.Session实例sess,执行sess.run()启动训练.不管是因为历史遗留代码或是团队保守 ...

  6. 【百度地图API】发布静态图API啦!只需一个网址,即可展示定制百度地图!

    原文:[百度地图API]发布静态图API啦!只需一个网址,即可展示定制百度地图! 摘要: 百度地图静态图API!您无须执行任何“特殊”操作便可在网页上显示此图片. 不需要 JavaScript.我们只 ...

  7. 【UML 建模】UML建模语言入门 -- 静态图详解 类图 对象图 包图 静态图建模实战

    发现个好东西思维导图, 最近开始用MindManager整理博客 . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/deta ...

  8. Python使用turtle库与random库绘制雪花

    记录Python使用turtle库与random库绘制雪花,代码非常容易理解,画着玩玩还是可以的. 完整代码如下:   效果图如下:  

  9. python 常用turtle

    python 常用turtle 常用命令1 import turtle turtle.bgcolor("black") 设置背景颜色 turtle.onscreenclick(x, ...

随机推荐

  1. 禁止yum update 自动更新系统内核

    使用yum update更新系统软件时,禁止升级内核,可以防止产生因不兼容导致的未知错误. 设置前请先备份原设置文件yum.conf cp /etc/yum.conf    /etc/yum.conf ...

  2. a href 鼠标滑过变成小手图标

    <a id="l05" style="cursor:pointer;text-decoration:none;" href="<%=pat ...

  3. Go语言系列之标准库ioutil

    ioutil标准库中提供了一些常用.方便的IO操作函数 一.相关方法 func ReadAll(r io.Reader) ([]byte, error) func ReadDir(dirname st ...

  4. Object.keys()方法 返回对象属性数组

    MDN语法 Object.keys(obj) 参数obj:要返回其枚举自身属性的对象. 返回值:一个表示给定对象的所有可枚举属性的字符串数组. 1.传入一个对象,返回的的是所有属性值 var obj2 ...

  5. js对象方法

    Number对象方法 toFixed() 方法 toFixed()方法返回的是具有指定位数小数的数字的字符串表示.例如: var oNumberObject = new Number(68); ale ...

  6. 深入理解Java虚拟机之自己编译JDK

    题外话 最近在阅读<深入理解Java虚拟机>,其中有一小节实战是自己编译JDK,实际操作下来后遇到问题不少,为此特地记录,也希望可以给大家带来一些参考! 前置准备 平台及工具:Window ...

  7. SCALA-基础知识学习(一)

    概述 本人开始学习scala的时候,是在使用和开发spark程序的时候,在此为了整理.记录和分享scala的基础知识,我写这篇关于scala的基础知识,希望与广大读者共同学习沟通进步.如果有些代码比较 ...

  8. Redis之持久化方式详解

    背景:Redis之所以能够在技术革新发展迅速的时代超越Memcache等其他Nosql数据库,最主要的一点是Redis提供数据持久化,能够根据持久化策略将缓存数据灵活的写到磁盘上,更好地满足了当下海量 ...

  9. VUE3 之 全局组件与局部组件

    1. 概述 老话说的好:忍耐是一种策略,同时也是一种性格磨炼. 言归正传,今天我们来聊聊 VUE 的全局组件与局部组件. 2. 全局组件 2.1 不使用组件的写法  <body> < ...

  10. 你的Kubernetes Java应用优雅停机了吗?

    Java 应用优雅停机 我们首先考虑下,一般在什么场景下数据会丢失呢? 升级服务时 pod重启时 服务器断电时 因为服务器断电属于极端情况,我们暂且不考虑.那就只有 Java 退出时我们要保证数据的完 ...