距离上一站已经时隔1年多,我承认很懒啦!利用python-turtle工具,通过调整角度、弧度完成作画,其实用到的方法很简单,就是需要耗费些精力不断地修整,闲话少说,先上个图吧!

画笔速度较慢,大家耐心等待,也可根据自己习惯调整,直接上代码:

import math
import turtle as t# 计算长度、角度 t1:画笔对象  r:半径  angle:扇形(圆形)的角度
def myarc(t1, r, angle):arc_length = 2 * math.pi * r * angle / 360  # angle角度的扇形的弧长n = int(arc_length / 3) + 1  # 线段条数step_length = arc_length / n  # 每条线段的长度step_angle = angle / n  # 每条线段的角度polyline(t1, n, step_length, step_angle)# 画弧线 t1:画笔对象  n:线段条数  length:每条线段长度  angle:每条线段的角度
def polyline(t1, n, length, angle):for index in range(n):t1.fd(length)t1.lt(angle)# 小花
def flower(n):for x in range(n):t.forward(0.5)if x < 80:t.left(1)elif x < 120:t.left(2.3)else:t.left(1)# 画布
t.screensize(500, 500, "white")
t.pensize(8)
t.pencolor("black")
t.speed(10)# 头
t.penup()
t.goto(-130, 170)
t.pendown()
t.setheading(220)
for x in range(580):t.forward(1)if x < 250:t.left(0.5)elif x < 350:t.left(0.1)else:t.left(0.5)# 耳朵
t.setheading(70)
for y in range(150):t.forward(1)if y < 80:t.left(0.2)elif y < 90:t.left(10)else:t.left(0.2)
t.setheading(160)
for y1 in range(140):t.forward(1)t.left(0.15)
t.setheading(140)
for y2 in range(157):t.forward(1)if y2 < 65:t.left(0.2)elif y2 < 75:t.left(8)else:t.left(0.5)t.pensize(5)
# 左眼睛
t.penup()
t.goto(-100, 60)
t.setheading(350)
t.pendown()
t.fillcolor("#000")
t.begin_fill()
step = 0.3
for i in range(2):for j in range(60):if j < 30:step += 0.02else:step -= 0.02t.forward(step)t.left(3)
t.end_fill()
# 右眼睛
t.penup()
t.goto(50, 40)
t.setheading(350)
t.pendown()
t.fillcolor("#000")
t.begin_fill()
step = 0.3
for i in range(2):for j in range(60):if j < 30:step += 0.02else:step -= 0.02t.forward(step)t.left(3)
t.end_fill()
# 鼻子
t.penup()
t.goto(-40, 30)
t.setheading(260)
t.pendown()
t.fillcolor("#ebc80e")
t.begin_fill()
step = 0.3
for i in range(2):for j in range(60):if j < 30:step += 0.02else:step -= 0.02t.forward(step)t.left(3)
t.end_fill()# 小花
t.penup()
t.goto(20, 180)
t.pendown()
t.fillcolor("#dd4a76")
t.begin_fill()
t.setheading(175)
flower(200)
t.setheading(250)
flower(200)
t.setheading(325)
flower(200)
t.setheading(40)
flower(200)
t.setheading(115)
flower(170)
t.end_fill()
t.penup()
t.goto(30, 180)
t.setheading(270)
t.pendown()
t.fillcolor("#e7be04")
t.begin_fill()
t.circle(10)
t.end_fill()
# 胡子
t.penup()
t.goto(-150, 65)
t.pendown()
t.setheading(170)
t.pensize(6)
for y in range(40):t.forward(1)t.left(0.3)t.penup()
t.goto(-150, 85)
t.pendown()
t.setheading(160)
for y in range(50):t.forward(1)t.left(0.3)t.penup()
t.goto(-150, 45)
t.pendown()
t.setheading(180)
for y in range(55):t.forward(1)t.left(0.3)t.penup()
t.goto(110, 10)
t.setheading(340)
t.pendown()
for y in range(40):t.forward(1)t.right(0.3)
t.penup()
t.goto(120, 30)
t.setheading(350)
t.pendown()
for y in range(30):t.forward(1)t.right(0.3)
t.penup()
t.goto(115, 50)
t.setheading(360)
t.pendown()
for y in range(50):t.forward(1)t.right(0.3)# 身子
t.pensize(8)
t.penup()
t.goto(-100, -30)
t.setheading(230)
t.pendown()
t.fillcolor("#efa9c1")
t.begin_fill()
for z in range(140):t.forward(1)t.left(0.2)
t.setheading(340)
for z in range(200):t.forward(1)t.left(0.1)
t.setheading(85)
for z in range(140):t.forward(1)t.left(0.1)
t.end_fill()
t.penup()
t.goto(-73, -33)
t.pendown()
t.setheading(250)
t.fillcolor("#da4b76")
t.begin_fill()
myarc(t, 40, 205)
t.setheading(170)
t.pensize(6)
t.forward(75)
t.end_fill()
# 左胳膊
t.pensize(8)
t.penup()
t.goto(-120, -17)
t.setheading(230)
t.pendown()
t.fillcolor("#d64b75")
t.begin_fill()
t.forward(50)
t.setheading(320)
for k in range(27):t.forward(1)t.left(1)
t.setheading(55)
for k in range(50):t.forward(1)t.right(0.1)
t.end_fill()
# 左手
t.penup()
t.goto(-125, -15)
t.setheading(140)
t.pendown()
t.fillcolor("#fff")
t.begin_fill()
t.forward(8)
t.setheading(50)
myarc(t, 10, 190)
t.setheading(150)
for j in range(80):t.forward(1)t.left(2.2)
t.forward(24)
t.end_fill()
# 右胳膊
t.penup()
t.goto(27, -45)
t.pendown()
t.fillcolor("#db4e79")
t.setheading(350)
t.begin_fill()
for x in range(50):t.forward(1)t.right(1)
t.setheading(220)
t.forward(40)
t.setheading(100)
for x in range(50):t.forward(1)t.left(0.2)
t.end_fill()
# 右手
t.penup()
t.goto(70, -75)
t.pendown()
t.setheading(300)
t.forward(8)
t.setheading(30)
for x in range(40):t.forward(1)t.right(5)
t.setheading(280)
for x in range(70):t.forward(1)t.right(2)
# 右脚
t.penup()
t.goto(-70, -180)
t.pendown()
t.setheading(250)
for x in range(30):t.forward(1)t.left(0.3)
for x in range(160):t.forward(1)if x < 30:t.left(3)elif x < 65:t.left(0.1)else:t.left(1)
# 左脚
t.penup()
t.goto(-150, -210)
t.setheading(340)
t.pendown()
t.fillcolor("#fff")
t.begin_fill()
step = 1.5
for i in range(2):for j in range(60):if j < 30:step += 0.1else:step -= 0.1t.forward(step)t.left(3)
t.end_fill()t.hideturtle()
t.mainloop()

仅供大家学习参考使用,如需转载请注明出处,谢谢配合!(每个“手艺人”都不容易,希望理解)

Python-turtle绘画旅程第二站:Hello Kitty相关推荐

  1. 打怪升级之小白的大数据之旅(六十一)<Hive旅程第二站:Hive安装>

    打怪升级之小白的大数据之旅(六十一) Hive旅程第二站:Hive安装 上次回顾 上一章我们学习了Hive的概念以及框架原理,本章节是对Hive的安装进行分享,因为它有些需要自己配置的点,所以我单独开 ...

  2. Python学习笔记:第二站 七十二变

    Python学习笔记 文章目录 Python学习笔记 第二站 七十二变 1. 二进制与字符编码 2. Python中的标识符与保留字 3. Python中的变量 4.Python中的数据类型 5. P ...

  3. 秣小白的C语言旅程——第二站(含自我介绍)

    鄙人C语言小白一枚,步履蹒跚地踏上了C语言学习的旅途,旅途景色新奇却也难免有曲折坑洼.小记旅途的艰难险阻,愿帮更多小白顺畅踏上旅途. 一.四舍五入2.0 在我回顾自己做过的C语言入门题中,发现了这样一 ...

  4. Python-turtle绘画旅程第一站:哆啦a梦

    本次绘画主要用到的库是turtle(海龟绘图),主要用到的函数是circle(画圆).fillcolor(填充颜色).forward(画线)等.具体用到的函数在代码中都有注释. 铛铛铛铛!!!先给大家 ...

  5. 用python画象棋棋盘_Python turtle绘画象棋棋盘

    通过使用turtle绘画象棋棋盘,供大家参考,具体内容如下 # 绘制象棋棋盘 import turtle t = turtle.Pen() t.width(2) # 设置画笔粗细 t.speed(1) ...

  6. Python Turtle 画图:黑洞里的繁星(附源代码)

                                     仰望星空,总想看到不一样的星辰.本文就介绍如何利用Turtle 绘画浩瀚宇宙黑洞里的繁星,Turtle是python一个简单好用的绘图 ...

  7. 用python turtle画棒棒糖源代码_【自学Python】DAY 4 绘画大师——turtle库(超详细)

    自学Python DAY 4 目录turtle库介绍 turtle库使用 turtle的实例(源代码分享) 库我之前发的百科已经详细的介绍了,不知道的点击下方链接查看!博文-宇辰:[Python百科] ...

  8. python语言创意绘画-Python turtle库能画出什么好玩的东西?

    [教你用Python画蛋糕] 我曾经给别人送过的生日礼物是一段Python代码... 用了Python的turtle package,仿照这个网站的代码:Layer Cake using Python ...

  9. Python Turtle 海龟绘图详解官方文档中文版

    Python Turtle 海龟绘图详解 (官方文档中文版)-安徽省太湖中学陈晓中整理 概述 海龟绘图很适合用来引导孩子学习编程. 最初来自于 Wally Feurzeig, Seymour Pape ...

最新文章

  1. c++求矩阵的秩_Matlab:矩阵的秩,简化梯形矩阵和线性方程组
  2. ITK:创建一个索引
  3. 为了追到小姐姐,我用 Python 制作了一个机器人
  4. Docker创建虚机和swarm
  5. 滴滴、小米启动造车,特斯拉的护城河还能守多久?
  6. Stella 知识库--模型类的设计
  7. 交互设计软件 html,交互设计工具篇
  8. json.loads解码字符串时出错:JSONDecodeError: Invalid \escape: line 1 column 2687 (char 2686)
  9. 解决在Mac上操作sourcetree反复要求输入密码的问题
  10. 拓端tecdat|数据预处理之异常值处理
  11. HDU 6096 树套树
  12. Qt_ios使用本地资源图片
  13. 应对Apple Music断续费后歌单被删除的一个解决方案
  14. Imagination和浙江大学信电学院签署合作协议,校企共创大学课程新篇章
  15. c语言自定义创建文件,c语言自定义文件名?
  16. SitePoint Podcast#181:解决比创建更多的问题
  17. seo全攻略_Shopify店铺SEO最全攻略(新手必看!!)
  18. 长时间戴耳机耳朵不舒服?骨传导耳机可以缓解这个问题
  19. SEO的职业生涯:从seo初级水平到seo资源整合营销总监的历程
  20. 如何对feko的ffe数据文件进行处理

热门文章

  1. 简单弄懂配置github CND加速
  2. android隐藏系统ui_如何启用Android的“系统UI调谐器”以访问实验功能
  3. Ajax 和 XML: 五种 Ajax 反模式(转载)
  4. DC888 : 数据流分析
  5. 清风数学建模——插值算法
  6. 电力系统| IEEE论文投稿流程
  7. js实现倒计时,定时器--完成时间倒计时
  8. DSP28035 CLA配置与调试步骤
  9. 蜂鸣器播放《两只老虎》
  10. 我叫mt4最新服务器,我叫MT4手游开服表_我叫MT4手游开服时间表_新服新区预告_第一手游网...