python:turtle绘图模块
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绘图模块的更多相关文章
- 10分钟轻松学会python turtle绘图
 1. 画布(canvas) 1.1 相关函数: 2. 画笔 2.1 画笔的状态 2.2 画笔的属性 2.3 绘图命令 3. 命令详解 4. 绘图举例 4.1 太阳花 4.2 绘制小蟒蛇 4.3 绘 ...
- 10分钟轻松学会 Python turtle 绘图
python2.6版本中后引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics),turtle库是python的内部库,使用导入即可 import turtle 先说明一下turtl ...
- Python Turtle绘图
1. 画布(canvas) 画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置 1.1 设置画布大小 turtle.screensize(canvwidth=None, ca ...
- Python turtle绘图实例分析
画一个红色的五角星 from turtle import * color('red','red') begin_fill() for i in range(5): fd(200) rt(144) en ...
- Python turtle 模块可以编写游戏,是真的吗?
1. 前言 turtle (小海龟) 是 Python 内置的一个绘图模块,其实它不仅可以用来绘图,还可以制作简单的小游戏,甚至可以当成简易的 GUI 模块,编写简单的 GUI 程序. 本文使用 tu ...
- Turtle绘图——python简单上手小案例
Turtle绘图 Turtle模块提供了在二维平面上移动的环境. Turtle可以实现位置.航向和各种可能的状态和动作. import turtle as tu roo = tu.Turtle() # ...
- Python中turtle绘图学习笔记和实例
一.既然本次讲的主角是turtle函数库,那肯定得先了解一下它是什么 turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位 ...
- 从Scratch到Python——python turtle 一种比pygame更加简洁的实现
从Scratch到Python--python turtle 一种比pygame更加简洁的实现 现在很多学校都开设了Scratch课程,学生可以利用Scratch创作丰富的作品,然而Scratch之后 ...
- #034Python选修课第二届Turtle绘图大赛
Pythonturtle库选修课作业 目录 目录 代码效果 题目要求 合作同学 程序实现 最初目标 实现方式 代码如下 代码效果 题目要求 具体内容可参阅课程教学网站或超星学习通. 按照2人一组,结对 ...
随机推荐
- More than the maximum number of request parameters
前些时间,我们的的一个管理系统出现了点问题,原本运行的好好的功能,业务方突然讲不行了,那个应用已经运行了好多年了,并且对应的代码最近谁也没改动过,好奇怪的问题,为了解决此问题,我们查看了日志,发现请求 ...
- 12.翻译系列:EF 6 中配置一对多的关系【EF 6 Code-First系列】
原文链接:https://www.entityframeworktutorial.net/code-first/configure-one-to-many-relationship-in-code-f ...
- Android BLE蓝牙开发-读写数据 获取UUID
https://www.jianshu.com/p/3711cfbf7128 一个ble蓝牙设备有多个包括多个Profile 一个Profile中有多个服务Service(通过服务的uuid找到对应的 ...
- loadrunner上传文件到网盘
有人提问,loadrunner 上传文件搞不好,请求帮忙处理.让提供网址,用fiddler抓包上传部分,主要有3个请求 第一个请求GET https://yun.xxx.com/api/files/u ...
- eclipse开发android入门学习
1.device窗体 查看android执行情况的窗体和DDMS内容一致 2.android.bat 在adb路径下执行adb操作,实现android系统 ...
- mac无法访问samba共享 提示输入用户名密码
这时候需要输入mac笔记本的用户名和密码 也可以在samba服务器上增加用用户: # smbpasswd -a user_nameNew SMB password:Retype new SMB pas ...
- JsonCpp 的使用
JSON全称为JavaScript ObjectNotation,它是一种轻量级的数据交换格式,易于阅读.编写.解析.jsoncpp是c++解析JSON串常用的解析库之一. jsoncpp中主要的类: ...
- 每日英语: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 ...
- idea debug info can be unavailable. Please close other application using ADB: Monitor, DDMS, Eclipse
开发android debug时 报错 解决方法 Kill adb 关闭 设备监视器
- 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 ...