turtle库是python的基础绘图库,这个库被介绍为一个最常用的用来介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图。
turtle名称含义为“海龟”,我们想象一只海龟,位于显示器上窗体的正中心,在画布上游走,它游走的轨迹就形成了绘制的图形。
海龟的运动是由程序控制的,它可以变换颜色,改变大小(宽度)等。
绘图坐标体系
turtle.setup(width,height,startx,starty)
使用turtle的setup函数,可以在屏幕中生成一个窗口(窗体),设置窗体的大小和位置,这个窗口就是画布的范围。
画笔控制函数
penup():抬起画笔;
pendown():落下画笔;
pensize(width):画笔宽度;
pencolor(color):画笔颜色;
运动控制函数
1.直线
turtle.forward(d) # turtle.fd(d) d为参数行进距离 控制画笔向前走d长度的直线 d可以为负数,表示向后运动。
2.曲线
turtle.circle(r,extent=None) # 根据半径r绘制extent角度的弧形 r 默认圆心在画笔左端点距离r长度的地方extent是绘制的角度,默认绘制完整的圆形
turtle.circle(100) # 在画笔的左侧(也就是上方)100距离的位置上然后以弧形来运动,没有设置extent参数,因此会绘制整个圆形
turtle.circle(-100,90) #圆心在画笔的右侧100距离(也就是下方)上,然后extent为90,因此绘制一个90度的弧形。
方向控制函数
绝对角度转向函数
turtle.setheading(angle) # turtle.seth(angle) 改变画笔的面向的角度( 初始方向是画布的正右方) 参数angle是绝对坐标系的角度
画笔角度转向函数
turtle.left(angle) # 向左转angle度
turtle.right(angle) # 向右转angle度
实例
代码:
#coding=utf-8
#绘制蟒蛇
import turtle
turtle.penup()
turtle.pencolor("blue")
turtle.forward(-250)
turtle.pendown()
turtle.pensize(10)
turtle.right(45)
for i in range(4):
turtle.circle(40, 80)
turtle.circle(-40, 80)
turtle.circle(40, 80 / 2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
turtle.done()
运行结果:
Python turtle库绘制简单图形
一.简介 Python中的turtle库是一个直观有趣的图形绘制函数库.turtle库绘制图形有一个基本框架:一个小海龟在坐标系中爬行,其爬行轨迹形成了绘制图形. 二.简单的图形列举 1.绘制4个不同 ...
python 利用turtle库绘制七段数码管的方式,绘制当前事件(时分秒00:00:00)
# coding:utf-8# 绘制七段数码管,显示当前时间import timeimport turtle as tt # 绘制间隔def drawGap(): tt.penup() tt.fd(3 ...
python 利用turtle库绘制五角星
# -*- coding: utf-8 –*-import turtleimport math def draw_polygon(aTurtle, size=50, n=3): for i in ra ...
使用turtle库绘制图形
1.使用turtle库绘制红色五角星图形 import turtle n = eval(input("请输入五角星的长度")) turtle.begin_fill() #开始填充颜 ...
学习笔记:HTML5 Canvas绘制简单图形
HTML5 Canvas绘制简单图形 1.添加Canvas标签,添加id供js操作.
Java入门:绘制简单图形
在上一节,我们学习了如何使用swing和awt工具创建一个空的窗口,本节学习如何绘制简单图形. 基本绘图介绍 Java中绘制基本图形,可以使用Java类库中的Graphics类,此类位于java.aw ...
python使用turtle库绘制奥运五环
效果图: #奥运五环 import turtle turtle.setup(1.0,1.0) #设置窗口大小 turtle.title("奥运五环") #蓝圆 turtle.pen ...
CSS绘制简单图形
究竟该用字体图标.图片图标.还是CSS画一个图标?我也不知道.各有千秋吧.本文将介绍如何用css绘制简单的图形,所有测试在chrome58.0完成,如果你不能得到正确结果请到caniuse查一查看看是 ...
Windows控制台下绘制简单图形
最近接触到一个很有意思的问题,如何在Windows控制台下画图,翻遍了C的头文件也没找到画图的函数,好吧,那就用Windows提供的API函数吧,看来想移植是没戏了.先画一个简单的图,类似心电图那种吧 ...
随机推荐
三星笔记本预装WIN8_降级WIN7方法
相信很多人在近两年购买笔记本都会遇到这样的问题.预装系统是windows 8用着不习惯想换系统的请往下看.换windows 7 windows XP 设备方法相同 WIN8降级WIN7是要重新分区的 ...
常用高度——获取浏览器窗口的高度(jquery和js)
一:针对浏览器的常用高度 jquery的用法:
poj 2553 The Bottom of a Graph【强连通分量求汇点个数】
The Bottom of a Graph Time Limit:3000MS Memory Limit:65536K Total Submissions:9641 Accepted: ...
bzoj 1188 : [HNOI]分裂游戏 sg函数
题目链接 给n个位置, 每个位置有一个小球. 现在两个人进行操作, 每次操作可以选择一个位置i, 拿走一个小球.然后在位置j, k(i
codeforces 475D. CGCDSSQ
D. CGCDSSQ time limit per test 2 seconds memory limit per test 256 megabytes Given a sequence of int ...
vue2.0项目实战(5)vuex快速入门
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具 ...
java面试中被问到的问题
技术面 1)Spring的注解有哪些? 2)你如何理解springIOC技术,如果不使用spring,你有哪些方式来加载bean? 3)springaop的原理是什么?它是怎样一 ...
【BZOJ3514】 Codechef MARCH14 GERALD07加强版
hentai... 原题: N个点M条边的无向图,询问保留图中编号在[l,r]的边的时候图中的联通块个数. 对于100%的数据,1≤N.M.K≤200,000. 直接复制wulala的题解 wulal ...
一款基于TweenMax跟随鼠标单击移动的div
今天给大家分享一款基于TweenMax跟随鼠标单击移动的div.在这款实例中你可以单击任意位置,div会移动到你单击的位置.效果图如下: 在线预览源码下载 实现的代码. html代码: < ...
Hibernate中连接数据库的配置
Hibernate连接数据库的配置 实体类的映射文件 /p>