turtle模块

海龟绘图(Turtle Graphics),python内置模块,非常简单好玩的一个库。

一、导入库

import turtle

from turtle import *

二、画布的设置

'''设置画笔大小'''
turtle.screensize() #返回默认大小(400, 300)
turtle.screensize(800, 600, "white") '''设置背景/画布颜色'''
turtle.bgcolor()

三、画笔的设置

画笔的状态描述:

画布上,默认有一个坐标原点为画布中心的坐标轴,,坐标原点上有一只面朝x轴正方向小乌龟。

这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中, 就是使用位置方向描述小乌龟(画笔)的状态。

画笔属性的设置

'''设置画笔的宽度'''
turtle.pensize()
turtle.pensize(2) #我喜欢用宽度2,舒服不解释 '''设置画笔颜色'''
#设置画笔颜色,没有参数传入,返回当前画笔颜色,
turtle.pencolor()
#传入参数设置画笔颜色,可以是字符串如"green", "red"
turtle.pencolor('yellow')
#传入多钟颜色,用列表传入
color = ['red','green','blue','orange']
turtle.pencolor(color [%4]) '''设置画笔速度'''
turtle.speed(5)

四、绘图的命令

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

(1)画笔运动命令:

#向当前画笔方向移动distance像素路程
turtle.forward(distance)
turtle.forward(10) #向当前画笔方向反向移动distance像素路程
turtle.backward(sidtance) #顺时针移动degree度
turtle.right(degree) #逆时针移动degree度
turtle.left(degree) #将画笔移动到坐标x,y位置
turtle.goto(x,y) #画圆,半径为正/负表圆心砸画笔的左/右边画
turtle.circle() #画图马上出结果,传入值为True或没有这条就慢慢画
turtle.tracer(False)

(2)画笔控制命令:

#绘制图形的填充颜色
turtle.fillcolor() #返回当前是否在填充的状态
turtle.filling() #开始填充
turtle.begin_fill() #填充完成
turtle.end_fill()

(3) 全局控制命令

#清空turtle窗口
turtle.clear() #绘制完成
#我在pycharm或sublime里运行turtle的代码如果后面不加这个界面会闪退
turtle.done()

示例:无敌旋转棒棒锤螺旋菊花图

import turtle

turtle.screensize(400,300,"white")
turtle.pensize(1)
turtle.bgcolor("white")
colors = ["red", "yellow",'green','blue']
turtle.tracer(False)
turtle.speed(5) for x in range(300):
turtle.forward(2*x)
turtle.color(colors[x % 4])
turtle.left(91)
turtle.done()

python:turtle绘图模块的更多相关文章

  1. 10分钟轻松学会python turtle绘图

     1. 画布(canvas) 1.1 相关函数: 2. 画笔 2.1 画笔的状态 2.2 画笔的属性 2.3 绘图命令 3. 命令详解 4. 绘图举例 4.1 太阳花 4.2 绘制小蟒蛇 4.3 绘 ...

  2. 10分钟轻松学会 Python turtle 绘图

    python2.6版本中后引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics),turtle库是python的内部库,使用导入即可 import turtle 先说明一下turtl ...

  3. Python Turtle绘图

    1. 画布(canvas) 画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置 1.1 设置画布大小 turtle.screensize(canvwidth=None, ca ...

  4. Python turtle绘图实例分析

    画一个红色的五角星 from turtle import * color('red','red') begin_fill() for i in range(5): fd(200) rt(144) en ...

  5. Python turtle 模块可以编写游戏,是真的吗?

    1. 前言 turtle (小海龟) 是 Python 内置的一个绘图模块,其实它不仅可以用来绘图,还可以制作简单的小游戏,甚至可以当成简易的 GUI 模块,编写简单的 GUI 程序. 本文使用 tu ...

  6. Turtle绘图——python简单上手小案例

    Turtle绘图 Turtle模块提供了在二维平面上移动的环境. Turtle可以实现位置.航向和各种可能的状态和动作. import turtle as tu roo = tu.Turtle() # ...

  7. Python中turtle绘图学习笔记和实例

    一.既然本次讲的主角是turtle函数库,那肯定得先了解一下它是什么 turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位 ...

  8. 从Scratch到Python——python turtle 一种比pygame更加简洁的实现

    从Scratch到Python--python turtle 一种比pygame更加简洁的实现 现在很多学校都开设了Scratch课程,学生可以利用Scratch创作丰富的作品,然而Scratch之后 ...

  9. #034Python选修课第二届Turtle绘图大赛

    Pythonturtle库选修课作业 目录 目录 代码效果 题目要求 合作同学 程序实现 最初目标 实现方式 代码如下 代码效果 题目要求 具体内容可参阅课程教学网站或超星学习通. 按照2人一组,结对 ...

随机推荐

  1. More than the maximum number of request parameters

    前些时间,我们的的一个管理系统出现了点问题,原本运行的好好的功能,业务方突然讲不行了,那个应用已经运行了好多年了,并且对应的代码最近谁也没改动过,好奇怪的问题,为了解决此问题,我们查看了日志,发现请求 ...

  2. 12.翻译系列:EF 6 中配置一对多的关系【EF 6 Code-First系列】

    原文链接:https://www.entityframeworktutorial.net/code-first/configure-one-to-many-relationship-in-code-f ...

  3. Android BLE蓝牙开发-读写数据 获取UUID

    https://www.jianshu.com/p/3711cfbf7128 一个ble蓝牙设备有多个包括多个Profile 一个Profile中有多个服务Service(通过服务的uuid找到对应的 ...

  4. loadrunner上传文件到网盘

    有人提问,loadrunner 上传文件搞不好,请求帮忙处理.让提供网址,用fiddler抓包上传部分,主要有3个请求 第一个请求GET https://yun.xxx.com/api/files/u ...

  5. eclipse开发android入门学习

    1.device窗体            查看android执行情况的窗体和DDMS内容一致 2.android.bat             在adb路径下执行adb操作,实现android系统 ...

  6. mac无法访问samba共享 提示输入用户名密码

    这时候需要输入mac笔记本的用户名和密码 也可以在samba服务器上增加用用户: # smbpasswd -a user_nameNew SMB password:Retype new SMB pas ...

  7. JsonCpp 的使用

    JSON全称为JavaScript ObjectNotation,它是一种轻量级的数据交换格式,易于阅读.编写.解析.jsoncpp是c++解析JSON串常用的解析库之一. jsoncpp中主要的类: ...

  8. 每日英语:Doc, Do I Need A Juice Cleanse?

    Some drink only vegetable juice. Others soak in Epsom salts. It's all in the pursuit of ridding the ...

  9. idea debug info can be unavailable. Please close other application using ADB: Monitor, DDMS, Eclipse

    开发android debug时 报错 解决方法 Kill adb  关闭  设备监视器

  10. Why you should use async tasks in .NET 4.5 and Entity Framework 6

    Improve response times and handle more users with parallel processing Building a web application usi ...