Turtle图形库

Turtle库是Python内置的图形化模块,属于标准库之一,位于Python安装目录的lib文件夹下,常用函数有以下几种:

画笔控制函数

penup():抬起画笔;

pendown():落下画笔;

pensize(width):画笔宽度;

pencolor(color):画笔颜色;

运动控制函数

forward(d)/fd(d):直行d个像素;

circle(r, extent = None):绘制半径为r,角度为extent的弧形,圆心默认在海龟左侧距离r的位置;

方向控制函数

setheading(angle)/seth(angle):改变前进方向;

left(angle):海龟左转;

right(angle):海龟右转;

Turtle库的使用

#coding=utf-8

#绘制蟒蛇

import turtle

turtle.penup()

turtle.pencolor("red")

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()

结果

#coding=utf-8

# 绘制五角星

import turtle

turtle.pensize(5)

turtle.pencolor("red")

turtle.forward(200)

for i in range(4):

turtle.right(144)

turtle.fd(200)

turtle.done()

结果

#绘制时钟

# coding=utf-8

import turtle as tt

from datetime import *

# 当前日期属于一周的第几天

def Week(t):

week = ["星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"]

return week[t.weekday()]

# 获取当前时间

def Date(t):

y = t.year

m = t.month

d = t.day

cur_hour = t.hour;

cur_min = t.minute;

cur_sec = t.second;

return "%s-%d-%d %d:%02d:%02d" % (y, m, d, cur_hour, cur_min, cur_sec)

# 移动画笔,距离为distance

def movePen(distance):

tt.penup()

tt.pensize(5)

tt.pencolor("blue")

tt.fd(distance)

tt.pendown()

# 绘制表针

def makeHands(name, length):

# 清空窗口,重置turtule状态为初始状态

tt.reset()

movePen(-length * 0.1)

# 开始记录多边形的顶点

tt.begin_poly()

tt.fd(length * 1.1)

# 停止记录多边形的顶点

tt.end_poly()

# 返回记录的多边形

handForm = tt.get_poly()

tt.register_shape(name, handForm)

# 初始化

def initial():

global secHand, minHand, hurHand, printer

# 重置方向向北(上),正角度为顺时针

tt.mode("logo")

# 建立并初始化表针

makeHands("secHand", 180)

makeHands("minHand", 150)

makeHands("hurHand", 110)

secHand = tt.Turtle()

secHand.shape("secHand")

minHand = tt.Turtle()

minHand.shape("minHand")

hurHand = tt.Turtle()

hurHand.shape("hurHand")

for hand in secHand, minHand, hurHand:

hand.shapesize(1, 1, 4)

hand.speed(0)

# 输出文字

printer = tt.Turtle()

# 隐藏画笔

printer.hideturtle()

printer.penup()

# 绘制表盘外框

def drawClock(R):

# 清空窗口,重置turtule状态为初始状态

tt.reset()

# 画笔尺寸

tt.pensize(5)

for i in range(60):

movePen(R)

if i % 5 == 0:

tt.fd(20)

movePen(-R - 20)

movePen(R + 20)

if i == 0:

# 写文本

tt.write(int(12), align="center", font=("Consolas", 14, "bold"))

elif i == 30:

movePen(25)

tt.write(int(i / 5), align="center", font=("Consolas", 14, "bold"))

movePen(-25)

elif (i == 25 or i == 35):

movePen(20)

tt.write(int(i / 5), align="center", font=("Consolas", 14, "bold"))

movePen(-20)

else:

tt.write(int(i / 5), align="center", font=("Consolas", 14, "bold"))

movePen(-R - 20)

else:

# 绘制指定半径和颜色的点

tt.dot(5, "red")

movePen(-R)

tt.right(6)

# 表针的动态显示

def handsMove():

t = datetime.today()

second = t.second + t.microsecond * 0.000001

minute = t.minute + second / 60.0

hour = t.hour + minute / 60.0

secHand.seth(6 * second)

minHand.seth(6 * minute)

hurHand.seth(30 * hour)

tt.tracer(False)

printer.fd(65)

tt.pencolor("green")

printer.write(Week(t), align="center", font = ("黑体", 14))

printer.back(130)

printer.write(Date(t), align="center", font = ("Consolas", 14))

# 设置当前画笔位置为原点,方向朝东

printer.home()

tt.tracer(True)

# 经过100ms后继续调用handsMove函数

tt.ontimer(handsMove, 100)

# 调用定义的函数,打开和关闭动画,为更新图纸设置延迟;

tt.tracer(False)

initial()

drawClock(200)

tt.tracer(True)

handsMove()

tt.mainloop()

结果

怎么用python画简单的图-使用Python中的Turtle库绘制简单的图形相关推荐

  1. python画简单图-使用Python中的Turtle库绘制简单的图形

    Turtle图形库 Turtle库是Python内置的图形化模块,属于标准库之一,位于Python安装目录的lib文件夹下,常用函数有以下几种: 画笔控制函数 penup():抬起画笔: pendow ...

  2. 使用Python中的Turtle库绘制简单的图形

    Turtle图形库 Turtle库是Python内置的图形化模块,属于标准库之一,位于Python安装目录的lib文件夹下,常用函数有以下几种: 画笔控制函数 penup():抬起画笔: pendow ...

  3. python用turtle库绘制树图形_使用Python中的Turtle库绘制简单的图形

    Turtle图形库 Turtle库是Python内置的图形化模块,属于标准库之一,位于Python安装目录的lib文件夹下,常用函数有以下几种: 画笔控制函数 penup():抬起画笔: pendow ...

  4. python turtle库画椭圆_如何用Python画一只肥肥的柯基狗狗——turtle库绘制椭圆与弧线实践...

    历时3天,利用工作之余的细碎时间, 修修改改,终于把这只丑萌的小鼓脸柯基画了出来,我也有狗啦~code的过程多坎坷,完成时就有多快乐!成果如下: 如果你依然在编程的世界里迷茫,不知道自己的未来规划, ...

  5. 教你轻松用Python画一只肥肥的柯基狗狗——turtle库绘制椭圆与弧线实践

    历时4天,利用工作之余的细碎时间, 修修改改,终于把这只丑萌的小鼓脸柯基画了出来,我也有狗啦~code的过程多坎坷,完成时就有多快乐!成果如下: 绘制柯基时主要用到了以下几种几何图形: 椭圆--柯基眼 ...

  6. python用函数绘制椭圆_如何用Python画一只肥肥的柯基狗狗—turtle库绘制椭圆与弧线实践...

    历时4天,利用工作之余的细碎时间, 修修改改,终于把这只丑萌的小鼓脸柯基画了出来,我也有狗啦~code的过程多坎坷,完成时就有多快乐!成果如下: 初学turtle时所画的这只柯基,由于对turtle中 ...

  7. python pos函数_如何用Python画一只肥肥的柯基狗狗—turtle库绘制椭圆与弧线实践

    历时4天,利用工作之余的细碎时间, 修修改改,终于把这只丑萌的小鼓脸柯基画了出来,我也有狗啦~code的过程多坎坷,完成时就有多快乐!成果如下: 初学turtle时所画的这只柯基,由于对turtle中 ...

  8. 如何在opengl用代码绘制英文_如何用Python画一只肥肥的柯基狗狗——turtle库绘制椭圆与弧线实践...

    历时4天,利用工作之余的细碎时间, 修修改改,终于把这只丑萌的小鼓脸柯基画了出来,我也有狗啦~code的过程多坎坷,完成时就有多快乐!成果如下: 初学turtle时所画的这只柯基,由于对turtle中 ...

  9. python画椭圆turtle_如何用Python画一只肥肥的柯基狗狗——turtle库绘制椭圆与弧线实践...

    from turtle import * pensize(5) speed(0) ##color('#F4A460')#橘黄 ##color('#FFE4E1')#肉粉 ##[背景圆] color(' ...

最新文章

  1. iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载
  2. 马云携阿里17位创始人及合伙人捐赠浙大一院5.6亿,杭州渐成中国硅谷
  3. 网站页面内链如何布局才更有利于SEO?
  4. Docker部署ELK 日志归集
  5. 【风控场景】互利网上数字金融典型场景: 消费金融
  6. Java 高并发_JAVA并发编程与高并发解决方案 JAVA高并发项目实战课程 没有项目经验的朋友不要错过!...
  7. Java IO Serialization
  8. 数据库(3)数据库操作
  9. 看FusionInsight Spark如何支持JDBCServer的多实例特性
  10. iPhone又降价了!京东、苏宁安排上了 iPhone XS系列最高直降1700元
  11. 一些关于并行计算的科研思路
  12. Reactjs不能忽略的key
  13. 正确使用ArrayList和LinkedList
  14. POJ1703-Find them, Catch them
  15. linux用命令行来执行php程序
  16. 三类IP地址ABC类的划分
  17. IDM认证过程日志埋点说明
  18. wx-jssdk,IOS调用API,config通过了,但是报错[ the permission value is offline verifying ]
  19. 操作系统第2章作业题答案
  20. 京东商品长图功能来啦 不用改图一键生成长图

热门文章

  1. db2表结构导出导入,数据库备份
  2. 大数据入门第五天——离线计算之hadoop(上)概述与集群安装
  3. 【代码笔记】iOS-获得设备型号
  4. document.all 用法
  5. C#中关键字ref与out的区别(转)
  6. VS2010安装OpenGL
  7. 【bzoj5100】[POI2018]Plan metra 构造
  8. Python基础----python的使用(二)
  9. 位运算一些简单的应用
  10. 快速组建的开发团队要怎么活下来?