python海龟绘图实例教程

2014-05-29  来源:本站原创  分类:Python  人气:21 

这篇文章主要介绍了python海龟绘图实例教程,需要的朋友可以参考下

本文以实例形式介绍了python turtle模块即海龟绘图的使用方法,对于需要进行图形编程的朋友相信会有一定的借鉴价值。

python turtle模块简介:
python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics)

1.使用海龟绘图首先我们需要导入turtle,如下所示:

 from turtle import * #将turtle中的所有方法导入

2.海龟绘图属性:

(1)位置
(2)方向
(3)画笔(画笔的属性,颜色、画线的宽度)

3.操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令

(1)运动命令:

  forward(degree)  #向前移动距离degree代表距离
  backward(degree)  #向后移动距离degree代表距离
  right(degree)    #向右移动多少度
 left(degree)  #向左移动多少度
 goto(x,y)  #将画笔移动到坐标为x,y的位置
  stamp()     #复制当前图形
 speed(speed)  #画笔绘制的速度范围[0,10]整数

(2)画笔控制命令:

 down() #移动时绘制图形,缺省时也为绘制
 up() #移动时不绘制图形
 pensize(width) #绘制图形时的宽度
 color(colorstring) #绘制图形时的颜色
 fillcolor(colorstring) #绘制图形的填充颜色
 fill(Ture)
 fill(false)

4.关于turtle简介许多下面我们看个实例:

(一)绘制正方形:

 import turtle
 import time
#定义绘制时画笔的颜色
 turtle.color("purple")
#定义绘制时画笔的线条的宽度
 turtle.size(5)
#定义绘图的速度
turtle.speed(10)
#以0,0为起点进行绘制
 turtle.goto(0,0)
#绘出正方形的四条边
 for i in range(4):
   turtle.forward(100)
   turtle.right(90)
#画笔移动到点(-150,-120)时不绘图
 turtle.up()
 turtle.goto(-150,-120)
#再次定义画笔颜色
 turtle.color("red")
#在(-150,-120)点上打印"Done"
 turtle.write("Done")
 time.sleep(3)

(二)绘制五角星:

import turtle
import time
turtle.color("purple")
turtle.pensize(5)
turtle.goto(0,0)
turtle.speed(10)
for i in range(6):
 turtle.forward(100)
 turtle.right(144)
turtle.up()
turtle.forward(100)
turtle.goto(-150,-120)
turtle.color("red")
turtle.write("Done")
time.sleep(3)

这里给出了两个简单的实例,大家可以根据上面的思路与方法进一步拓展,绘制出一些更复杂的图形。

相关文章
  • python海龟绘图实例教程 2014-05-29

    这篇文章主要介绍了python海龟绘图实例教程,需要的朋友可以参考下 本文以实例形式介绍了python turtle模块即海龟绘图的使用方法,对于需要进行图形编程的朋友相信会有一定的借鉴价值. python turtle模块简介: python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics) 1.使用海龟绘图首先我们需要导入turtle,如下所示: from turtle import * #将turtle中的所有方法导入 2.海龟绘图属性: (1)位置 (2

  • Cocoa Bridge -Common Lisp 简单窗口绘图实例 (教程翻译) 2013-07-22

    Cocoa Bridge -Common Lisp 简单窗口绘图实例 (教程翻译) === 原文地址: 网络: http://trac.clozure.com/ccl/wiki/CocoaBridge 原文标题: Cocoa Bridge 翻译者: FreeBlues 2013-07-21 === 目录 0 Cocoa 桥 Cocoa Bridge 1 组件使用 Elementary Usage 1.1 基本窗口 1.2 更多绘图 More drawing 0 Cocoa 桥 Cocoa Bri

  • Python迭代用法实例教程 2014-03-18

    这篇文章主要介绍了Python迭代用法,包括了迭代的定义及具体用法,是一个非常实用的技巧,需要的朋友可以参考下 本文实例讲述了Python中迭代的用法,是一个非常实用的技巧.分享给大家供大家参考借鉴之用.具体分析如下: 如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration). 在Python中,迭代是通过for ... in来完成的,而很多语言比如C或者Java,迭代list是通过下标完成的,比如Java代码: for

  • Python切片用法实例教程 2015-04-23

    这篇文章主要介绍了Python切片用法,可以有效的提高Python程序设计的效率,更加灵活的进行Python循环操作,需要的朋友可以参考下 本文以实例形式讲述了Python中切片操作的用法,分享给大家供大家参考借鉴,具体如下: 取一个list或tuple的部分元素是非常常见的操作.比如,一个list如下: >>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] 取前3个元素,应该怎么做呢? 比较笨的办法如下: >>> [

  • Python中zip()函数用法实例教程 2013-11-06

    这篇文章主要介绍了Python中zip()函数用法实例教程,对Python初学者有一定的借鉴价值,需要的朋友可以参考下 本文实例讲述了Python中zip()函数的定义及用法,相信对于Python初学者有一定的借鉴价值.详情如下: 一.定义: zip([iterable, ...])zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表).若传入参数的长度不等,则返回list的长度

  • Python Tkinter简单布局实例教程 2014-06-17

    这篇文章主要介绍了Python Tkinter简单布局实例教程,包括了填充.左右布局.绝对布局.网格布局等,需要的朋友可以参考下 本文实例展示了Python Tkinter实现简单布局的方法,示例中备有较为详尽的注释,便于读者理解.分享给大家供大家参考之用.具体如下: # -*- coding: utf-8 -*- from Tkinter import * root = Tk() # 80x80代表了初始化时主窗口的大小,0,0代表了初始化时窗口所在的位置 root.geometry('80x

  • python的绘图工具matplotlib使用实例 2014-12-13

    这篇文章主要介绍了python的绘图工具matplotlib使用实例,需要的朋友可以参考下 matplotlib是功能十分强大的绘制二维图形的Python模块,它用Python语言实现了MATLAB画图函数的易用性,同时又有非常强大的可定制性.它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中.它的文档相当完备,并且Gallery页面中有上百幅缩略图,打开之后都有源程序.因此如果你需要绘制某种类型的图,只需要在这个页面中

  • Windows系统下安装Python的SSH模块教程 2013-10-14

    这篇文章主要介绍了Windows系统下安装Python的SSH模块教程,本文涵盖了pycrypto.ecdsa.paramiko.OpenSSH.SSH等模块的安装,需要的朋友可以参考下 Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在Python中使用SSH,则需要先安装模块顺序是:pycrypto -> ecdsa -> paramiko 1.安装pyCrypto 安装这个比较麻烦,需要

  • python列表操作实例 2013-10-16

    这篇文章主要介绍了python列表操作方法,实例分析了Python针对列表操作的插入.删除等各种操作技巧,需要的朋友可以参考下 本文实例讲述了python列表操作的方法.分享给大家供大家参考. 具体实现方法如下: class Node: """Single node in a data structure""" def __init__(self, data): """Node constructor"&q

  • 在树莓派2或树莓派B+上安装Python和OpenCV的教程 2013-12-07

    这篇文章主要介绍了在树莓派2或树莓派B+上安装Python和OpenCV的教程,主要基于GTK库,并以Python2.7和OpenCV 2.4.X版本的安装作为示例,需要的朋友可以参考下 我的Raspberry Pi 2昨天刚邮到,这家伙看上去很小巧可爱. 这小家伙有4核900MHZ的处理器,1G内存.要知道,Raspberry Pi 2 可比我中学电脑实验室里大多数电脑快多了. 话说,自从Raspberry Pi 2发布以来,我收到了很多请求,要求我能写一个在它上面安装OpenCV和Pytho

  • python多线程操作实例 2013-12-16

    这篇文章主要介绍了python多线程操作实例,本文先是讲解了python多线程的相关知识.python多线程使用的两种方法等内容,需要的朋友可以参考下 一.python多线程 因为CPython的实现使用了Global Interpereter Lock(GIL),使得python中同一时刻只有一个线程在执行,从而简化了python解释器的实现,且python对象模型天然地线程安全.如果你想你的应用程序在多核的机器上使用更好的资源,建议使用multiprocessing或concurrent.f

  • Python with用法实例 2013-12-29

    这篇文章主要介绍了Python with用法实例,本文讲解了with语句的几种使用方法和使用场景,需要的朋友可以参考下 python中with可以明显改进代码友好度,比如: with open('a.txt') as f: print f.readlines() 为了我们自己的类也可以使用with, 只要给这个类增加两个函数__enter__, __exit__即可: 复制代码 代码如下: >>> class A: def __enter__(self): print 'in enter

  • php实现最简单的MVC框架实例教程 2014-01-08

    这篇文章主要介绍了php实现最简单的MVC框架实例教程,讲述了MVC框架的运行原理及简单实现方法,具有不错的参考借鉴价值,需要的朋友可以参考下 本文以一个实例的形式讲述了PHP实现MVC框架的过程,比较浅显易懂.现分享给大家供大家参考之用.具体分析如下: 首先,在学习一个框架之前,基本上我们都需要知道什么是mvc,即model-view-control,说白了就是数据控制以及页面的分离实现,mvc就是这样应运而生的,mvc分为了三个层次,而且三个层次各司其职,互不干扰,首先简单介绍下,各个层次:

  • Python操作SQLite简明教程 2014-01-28

    这篇文章主要介绍了Python操作SQLite简明教程,简单明了的入门教程,包含连接.建表.增删修查等例子,需要的朋友可以参考下 一.SQLite简介 SQLite是一个包含在C库中的轻量级数据库.它并不需要独立的维护进程,并且允许使用非标准变体(nonstandard variant)的SQL查询语句来访问数据库.一些应用可是使用SQLite保存内部数据.它也可以在构建应用原型的时候使用,以便于以后转移到更大型的数据库,比如PostgreSQL或者Oracle. sqlite3模块由Gerha

  • python映射列表实例分析 2014-02-04

    这篇文章主要介绍了python映射列表,实例分析了python映射列表遍历计算其中每一个元素的使用技巧,需要的朋友可以参考下 本文实例讲述了python映射列表.分享给大家供大家参考.具体分析如下: 列表映射是个非常有用的方法,通过对列表的每个元素应用一个函数来转换数据,可以使用一种策略或者方法来遍历计算每个元素. 例如: params = {"server":"mpilgrim", \ "database":"master"

  • gearman的安装启动及python API使用实例 2014-02-18

    这篇文章主要介绍了gearman的安装启动及python API使用,需要的朋友可以参考下 本文讲述了gearman的安装启动及python API使用实例,对于网站建设及服务器维护来说非常有用! 一.概述: Gearman是一款非常优秀的任务分发框架,可以用于分布式计算.具体的gearmand服务的安装启动及gearman的python 模块的安装以及简单示例如下: 操作系统:rnel 5.7 1. 首先,我们需要安装gearmand,在centos和rhel环境下,我们只需运行以下命令: y

  • python测试驱动开发实例 2014-02-27

    这篇文章主要介绍了python测试驱动开发实例,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了python测试驱动开发的方法,分享给大家供大家参考.具体方法如下: import unittest from main import Sample class SampleTest(unittest.TestCase): def setUp(self): print "create a new Sample" self._sample = Sample("b64e5843c

  • ThinkPHP跳转页success及error模板实例教程 2014-04-10

    这篇文章主要介绍了ThinkPHP跳转页success及error模板实例教程,可以帮助初学者进一步熟悉ThinkPHP的页面跳转流程,需要的朋友可以参考下 本文以实例讲解了ThinkPHP跳转页面的success与error方法所对应的视图与控制器的实现方法,通过本实例教程可以帮助读者更好的掌握success方法与error方法的使用. 首先是控制器中,可以使用下代码: <?php // 本文档自动生成,仅供测试运行 class IndexAction extends Action { /**

  • Python Socket编程入门教程 2014-04-15

    这篇文章主要介绍了Python Socket编程入门教程,本文包含一个客户端Socket编程实现和一个服务器端Socket编程例子,需要的朋友可以参考下 这是用来快速学习 Python Socket 套接字编程的指南和教程.Python 的 Socket 编程跟 C 语言很像. Python 官方关于 Socket 的函数请看 http://docs.python.org/library/socket.html 基本上,Socket 是任何一种计算机网络通讯中最基础的内容.例如当你在浏览器地址栏

  • Python的类实例属性访问规则探讨 2014-05-31

    这篇文章主要介绍了Python的类实例属性访问规则,本文总结了一些对C++和Java程序员来说不是很直观的地方来说明Python中的类实例属性访问,需要的朋友可以参考下 一般来说,在Python中,类实例属性的访问规则算是比较直观的. 但是,仍然存在一些不是很直观的地方,特别是对C++和Java程序员来说,更是如此. 在这里,我们需要明白以下几个地方: 1.Python是一门动态语言,任何实体都可以动态地添加或删除属性. 2.一个类定义了一个作用域. 3.类实例也引入了一个作用域,这与相应类定义