利用turtle库,主要调用goto()函数、circle()函数和改变角度的left()函数,通过不断地尝试,最终实现QQ表情“蹭一蹭”的绘制,代码如下。

# -*- coding: utf-8 -*-
"""
Created on Mon Aug 13 21:34:21 2018@author: 魅梦
"""from turtle import *def drawcircle(x, y, r, angle, size):pensize(size)up()goto(x, y)down()begin_fill()circle(r, angle)color("black", "white")end_fill()
def draweye(x, y, startangle, changeangle, step, stepplus, times):pensize(3)up()goto(x, y)down()setheading(startangle)a = stepfor i in range(times):a = a + stepplusleft(changeangle)forward(a)
#Turtle().screen.delay(0)
hideturtle()
drawcircle(0, 0, 45, 360, 2)
drawcircle(20, -1, 15, 360, 2)
drawcircle(-5, -1, 15, 360, 2)
draweye(-15, 70, -30, 3, 0.1, 0.03, 25)
draweye(-20, 58, -30, 2, 0.1, 0.03, 35)
draweye(22, 75, -75, 3, 0.1, 0.02, 30)
draweye(17, 65, -75, 2, 0.1, 0.02, 40)
setheading(90)
drawcircle(0, 55, -5, -180, 3)
setheading(90)
drawcircle(10, 55, -5, -180, 3)
begin_fill()
draweye(4, 50, -100, 0.8, 0.05, 0.01, 55)
draweye(16, 50, -80, -0.8, 0.05, 0.01, 55)
color("black", "red")
end_fill()
setheading(90)
drawcircle(0, 55, -5, -180, 3)
setheading(90)
drawcircle(10, 55, -5, -180, 3)
pensize(8)
setheading(5)
up()
goto(-25, 50)
down()
begin_fill()
color("pink", "pink")
forward(15)
end_fill()
up()
goto(30, 50)
down()
begin_fill()
color("pink", "pink")
forward(10)
end_fill()

绘制效果如下图。

接下来实现更简单的“I LOVE U”字母的绘制,代码如下。

#<程序:绘制LOVE>
from turtle import *
def jumpto(x,y):up();goto(x,y);down()
def go():hideturtle()jumpto(-190-60,50)forward(60)jumpto(-160-60,50)right(90)forward(100)left(90)jumpto(-190-60,-50)forward(60)jumpto(-100,50)forward(0)right(90)forward(100)left(90)forward(60)jumpto(-30,50)forward(60)right(90)forward(100)right(90)forward(60)right(90)forward(100)jumpto(40,50)forward(0)right(160.71)forward(105.9)left(141.42)forward(105.9)jumpto(120,50)right(160.71)forward(100)left(90)forward(60)jumpto(120,0)forward(60)jumpto(120,50)forward(60)jumpto(270,50)right(90)forward(75)circle(30,180)forward(75)right(90)
color("red")
width(8)
go()color("yellow")
width(6)
go()color("red")
width(4)
go()color("yellow")
width(2)
go()color("red")
width(0)
go()
s=Screen();s.exitonclick()

绘制效果可自行进行尝试,这里就不做展示了。接下来还有一个通过循环绘制的烟花图像,首先将画笔颜色设置为白色,填充颜色设置为黑色,通过循环实现画笔的绘制,但此时看不到任何图形,直到调用end_fill()开始填充,这时屏幕上就突然呈现出烟花的图像,然后将画笔颜色设置为白色,填充颜色也设置为白色,调用time.sleep(1)函数,经过一秒后执行clear()函数清空画布,实现烟花图像的消失,由于出现时间较为短暂,我将其命名为“惊鸿一现”。具体代码如下。

from turtle import *
import time
color('white','black')
begin_fill()
while True:speed("fastest")forward(115)left(175)if abs(pos())<1:break
end_fill()
color('white','white')
time.sleep(1)
clear()

“惊鸿”现时的画面如下图。

在实践过程中你也可以尝试改变不同的画笔颜色与填充颜色从而实现更加绚丽的效果。

turtle库绘图:绘制QQ表情“蹭一蹭”相关推荐

  1. python turtle库setpos_Python内置海龟(turtle)库绘图命令详解(二)

    继续谈利用海龟库(turtle库)做图.在这篇文章(Python内置海龟(turtle)库绘图命令详解(一))中已经介绍了turtle的一些基本画图命令,包括画布的设计.画笔属性与状态的设置以及画笔的 ...

  2. 用python代码(turtle库)绘制好看的效果图

    最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成喔~) one 樱花树 效果(有 ...

  3. Python利用turtle库绘图大熊猫

    Python利用turtle库绘图大熊猫 卡通大熊猫的详细代码 由代码绘制的熊猫宝宝 Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原 ...

  4. python使用turtle库、绘制一个八边形_【Python】turtle八边形绘制

    [Python]turtle八边形绘制 ‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬ ...

  5. 使用turtle库,绘制一个正方形。

    题目: 使用turtle库,绘制一个正方形. 代码如下(示例): # 使用turtle库,绘制一个正方形. import turtle as t # 隐藏箭头 t.hideturtle() # 画笔落 ...

  6. Python的turtle库绘图-樱花动态飘落

    Python的turtle库绘图-樱花动态飘落 loading...... (o゜▽゜)o☆[BINGO!] # *===================================* # -*- ...

  7. python使用turtle库、绘制一个八角形_Python:turtle库的使用及图形绘制

    [TOC] 一.绘制一个八边形 使用turtle库,绘制一个八边形 代码: from turtle import * setup(800,800,20,20) penup() left(90) fd( ...

  8. turtle叠边形绘制使用turtle库,绘制一个叠边形,其中,叠边形内角为100度。提示:一共9条边,共2圈,每次左转角度为80度(720/9)输出示例叠边形效果如下:

    题目: turtle叠边形绘制 使用turtle库,绘制一个叠边形,其中,叠边形内角为100度. 提示:一共9条边,共2圈,每次左转角度为80度(720/9) 输出示例 叠边形效果如下: 代码如下(示 ...

  9. Python学习17 Turtle库绘图

    学习网址:https://docs.python.org/zh-cn/3/library/turtle.html Turtle库 Turtle库是Python语言中一个很流行的绘制图像的函数库,一个小 ...

最新文章

  1. jquery生成二维码
  2. Spring框架bean的注解管理方法之一 使用注解生成对象
  3. dllinject使用
  4. 2.3.7 多生产者多消费者问题
  5. k8s拉取私有仓库镜像:通过config.json文件或命令行来创建secret(docker-registry)
  6. mysql shell 1.0.10_MySQL Shell(使用Shell命令管理MySQL)下载 v1.0.10 官方32位+64位Windows版 - 比克尔下载...
  7. java面向对象的三大特征是6_Java面向对象的三大特征
  8. java封装发送邮件的插件_基于Spring封装的Javamail实现邮件发送
  9. GDAL读写矢量文件——Python
  10. GitHub上最火的40个Android开源项目(二)
  11. 用CSS制作日历弹出框的心得
  12. 【斐波那切数列】LeetCode 70. Climbing Stairs
  13. HQChart 股市图表
  14. Unity3D 内存释放 垃圾回收
  15. 如何区别文本是BIG5还是GB?
  16. 手机浏览器能上网微信无法连接服务器,手机打不开微信的网页怎么办?手机打不开微信网页的原因和解决方法...
  17. java 导出压缩文件,IO流非正常关闭引起的“不可预料的压缩文件末端”的解决办法
  18. Jetson TK1
  19. 有创意的思维导图要怎样绘制
  20. 赴日工作之在留换签证

热门文章

  1. Win11提示Windows无法访问指定设备路径或文件的三种解决方法
  2. Java 项目开发团队
  3. eclipse安装包网址
  4. 你是如何学习一项新技术的?
  5. Python,批量删除txt文本指定行
  6. Excel如何破解vba的宏密码
  7. 部队文职计算机专业技术岗面试,军队文职计算机类面试题-广东军队人才网
  8. 《计算机网络安全》学习笔记之访问控制与虚和谐拟专和谐用网技术
  9. 【Ajax】异步通信
  10. 数据预处理与特征工程—9.Lasso算法实现特征选择