闲来没事儿,继续用turtle绘制图案,这次我们要绘制的是小黄人:

好了,现在开始代码教学:

1.导入模块

from turtle import *

2.设置属性

pensize(4)

3.绘制头部外轮廓和头发

left(90)
fd(50)
circle(-120,90)
seth(90)
circle(45,80)
circle(45,-80)
left(20)
circle(45,95)
circle(45,-95)
seth(90)
circle(-45,80)
circle(-45,-80)
right(20)
circle(-45,95)
circle(-45,-95)
seth(0)
circle(-120,90)
fd(50)

4.绘制眼镜和眼睛

bk(15)
seth(180)
begin_fill()
fd(35)
right(90)
fd(20)
right(90)
fd(35)
end_fill()bk(35)
seth(90)
pensize(8)
circle(42.5,540)
p11=pos()
circle(-42.5,540)
pensize(4)
p12=pos()
h=heading()pu()
goto(p11)
seth(180)
fd(40)
dot(20)
right(180)
fd(80)
dot(20)
left(180)
goto(p12)
seth(h)
pd()seth(180)
begin_fill()
for i in range(2):fd(35)left(90)fd(20)left(90)
end_fill()

5.移到裤带的位置

fd(35)
left(90)
fd(50)
fd(25)
p=pos()
bk(25)

6.绘制裤带

p6=pos()
left(60)
fd(80) # length
p8=pos()
right(90)
fd(12.5)
right(90)pu()
fd(15)
dot(8)
bk(15)
pd()left(90)
fd(12.5)
p2=pos()
goto(p)

7.绘制裤兜

seth(-90)
fd(50)
left(90)
p3=pos()
goto(p2[0],ycor())
goto(p2)

8.绘制鞋子和下半身轮廓

pu()
goto(p3)
pd()
seth(-90)
circle(120,30)
left(90)
circle(300,10)
circle(300,-10)
right(90)
circle(120,60)
p13=pos()
right(90)
fd(35)
right(90)
fd(80)
right(90)
circle(-15,90)
left(90)
fd(20)
goto(p13)
seth(-90)
fd(35)
left(90)
fd(80)
left(90)
circle(15,90)
right(90)
fd(20)
goto(p13)
seth(0)
circle(120,60)
left(90)
circle(-300,10)
circle(-300,-10)
right(90)
circle(120,30)

9.绘制另一个裤兜

goto(xcor(),p6[1])
seth(90)
fd(20)
bk(20)
seth(-90)
fd(25)
p4=pos()
bk(25)

10.绘制另一个裤带

right(60)
fd(80) # length
p9=pos()
left(90)
fd(12.5)
left(90)pu()
fd(15)
dot(8)
bk(15)
pd()right(90)
fd(12.5)
p5=pos()
goto(p4)seth(-90)
fd(50)
right(90)
p7=pos()
goto(p5[0],ycor())
goto(p5)

11.绘制两边裤带的连接线,使下半部分形成裤子

pu()
goto(p8)
seth(0)
pd()
goto(p9)

12.绘制裤子中间的半圆形

dis=p9[0]-p8[0]
seth(180)
fd(dis/2)
left(90)
pu()
fd(25)
seth(0)
pd()
fd(25)
bk(50)
right(90)
fd(30)
circle(25,180)
fd(30)

13.绘制嘴巴

pu()
seth(-180)
fd(25)
right(90)
fd(25)
fd(25)
p10=pos()
seth(-45)
pd()
circle(30,110)
goto(p10)

14.隐藏画笔并保持窗口显示

ht()
done()

最终代码:

from turtle import *pensize(4)left(90)
fd(50)
circle(-120,90)
seth(90)
circle(45,80)
circle(45,-80)
left(20)
circle(45,95)
circle(45,-95)
seth(90)
circle(-45,80)
circle(-45,-80)
right(20)
circle(-45,95)
circle(-45,-95)
seth(0)
circle(-120,90)
fd(50)bk(15)
seth(180)
begin_fill()
fd(35)
right(90)
fd(20)
right(90)
fd(35)
end_fill()bk(35)
seth(90)
pensize(8)
circle(42.5,540)
p11=pos()
circle(-42.5,540)
pensize(4)
p12=pos()
h=heading()pu()
goto(p11)
seth(180)
fd(40)
dot(20)
right(180)
fd(80)
dot(20)
left(180)
goto(p12)
seth(h)
pd()seth(180)
begin_fill()
for i in range(2):fd(35)left(90)fd(20)left(90)
end_fill()fd(35)
left(90)
fd(50)
fd(25)
p=pos()
bk(25)p6=pos()
left(60)
fd(80) # length
p8=pos()
right(90)
fd(12.5)
right(90)pu()
fd(15)
dot(8)
bk(15)
pd()left(90)
fd(12.5)
p2=pos()
goto(p)seth(-90)
fd(50)
left(90)
p3=pos()
goto(p2[0],ycor())
goto(p2)pu()
goto(p3)
pd()
seth(-90)
circle(120,30)
left(90)
circle(300,10)
circle(300,-10)
right(90)
circle(120,60)
p13=pos()
right(90)
fd(35)
right(90)
fd(80)
right(90)
circle(-15,90)
left(90)
fd(20)
goto(p13)
seth(-90)
fd(35)
left(90)
fd(80)
left(90)
circle(15,90)
right(90)
fd(20)
goto(p13)
seth(0)
circle(120,60)
left(90)
circle(-300,10)
circle(-300,-10)
right(90)
circle(120,30)goto(xcor(),p6[1])
seth(90)
fd(20)
bk(20)
seth(-90)
fd(25)
p4=pos()
bk(25)right(60)
fd(80) # length
p9=pos()
left(90)
fd(12.5)
left(90)pu()
fd(15)
dot(8)
bk(15)
pd()right(90)
fd(12.5)
p5=pos()
goto(p4)seth(-90)
fd(50)
right(90)
p7=pos()
goto(p5[0],ycor())
goto(p5)pu()
goto(p8)
seth(0)
pd()
goto(p9)dis=p9[0]-p8[0]
seth(180)
fd(dis/2)
left(90)
pu()
fd(25)
seth(0)
pd()
fd(25)
bk(50)
right(90)
fd(30)
circle(25,180)
fd(30)pu()
seth(-180)
fd(25)
right(90)
fd(25)
fd(25)
p10=pos()
seth(-45)
pd()
circle(30,110)
goto(p10)ht()
done()

喜欢的话就点赞关注吧!在Turtle画图专栏中可以查看往期的Turtle小项目文章哦!

Python Turtle 小项目 9 小黄人相关推荐

  1. c小项目,小码资金管理工具

    纯c小项目,小码资金管理工具moneykeeper 作者:流浪舟 公众号:小码之光 你小码哥回来啦!最近闷得慌,又在学java(自学,想走这条路,哎,一个人找到所爱的真的很难,说不定哪天真的挂了,就来 ...

  2. python: turtle绘制有趣的小图像合集

    白天停电停网了一天后,又遇到一些事情心情难过,白天看到一些有趣的图像,是用python的turtle库画图. 晚上来电了后,也不想学习了,就看网上一些教程学习画图. 1. 飞机 import turt ...

  3. Python turtle入门:用小海龟画美队盾牌 (内附画五角星的详细代码)

    这篇博文是博主自己的python turtle库学习记录(xiaobai),也是和uu的学习分享!! 赶紧来看看小海龟是怎么画美队盾牌的吧!! 画五角星      (想看五角星画法的uu直接点这里哈) ...

  4. [java]JavaSE基础小项目:校园多人畅聊系统

    这是一个基于JavaSE的小项目,从名字我们也能看出来这是个多人聊天系统.下面记录一下整个项目的功能,设计思想以及所用到的知识,大家有兴趣的话,也可以自己尝试练习一下,也算是对SE的复习. 项目名称: ...

  5. 开源一个安信可A9g小项目微信小程序定位器项目②GPS模块如何定位经纬度并且上报到MQTT服务器,实现远程查看模块的经纬度;

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1. 如何在windows10上环境搭建,编译烧录代码固件,查看运行 ...

  6. 2022-01-13 微信小程序-简历小项目(一) 小程序中的flex布局,简历首页的制作,箭头区域的制作

    文章目录 一.准备 1.目标 2.小程序中的flex布局 回顾flex布局 小程序中要把div换成view标签,别的不变 二.制作简历小程序-首页 1.利用小程序提供的独有的API来初始化高和宽 小程 ...

  7. python小项目——2048小游戏(详解)

    2048游戏 原版游戏地址 第一部分 导入所需要的库 第二部分 确认游戏键位设置,并和对应的操作关联 第三部分 获取用户输入的值,并直到有效键位 第四部分 对矩阵的应用,减少代码量 第五部分 创建棋盘 ...

  8. python怎么找项目做小生意_三个投资小回报大的项目,让你没钱也能做买卖!

    原标题:三个投资小回报大的项目,让你没钱也能做买卖! 投资小的买卖有哪些?这是一个浮躁的年代,人人都在追求小投资大回报,甚至有些人还想空手套白狼,现实生活中这些现象是很常见的,那么小投资大回报的生意真 ...

  9. 练手的70个超火python小项目,小编建议收藏哦,送你们玩

    相信正在学Python你一定为了没有练手项目而发愁,小编精心准备出了70个Python的练手项目,相信能够喂饱大伙儿吧!哈哈! 这里面的项目都很有代表性,不只是可以用来练手,而且在以后的工作中都有很实 ...

最新文章

  1. Mozilla宣布年底前放弃支持Persona登录服务
  2. html如何超链接到servlet
  3. java mapreduce 标准差_MapReduce设计模式之概要设计模式
  4. python写word模板_Python3操作Office之Word模板技术
  5. 哥大计算机科学学费,哥大计算机科学专业成功案例解析!!!
  6. 某测试仪控制系统的设计方案--ARM+FPGA+NIOS
  7. 模式识别之聚类算法k-均值---k-均值聚类算法c实现
  8. python 干什么工作具有明显优势-Python 的优势在哪里?
  9. 无缝对接Spark与R:Sparklyr系列—探讨属于数据科学家的Spark
  10. frameset框架如何使左边页面显示,隐藏?wj-wangjun
  11. Linux下informix的安装(最简单超详细)
  12. gambit软件license文件
  13. MATLAB符号运算
  14. OpenWrt 把SD卡挂载到 /overlay
  15. 移动支付服务商加盟/微信支付宝扫码支付代理加盟
  16. 在连接至 Steam 服务器时发生了一个错误。请稍后重试。
  17. 【中医学】10 针灸-2:常用腧穴
  18. linux redis5.0 集群搭建
  19. 微信开发者工具下载及调试
  20. 点击word页面自动弹出信息检索

热门文章

  1. 3.3亿千瓦,垃圾电终于迎来它的巅峰时刻
  2. dockerfile构建自己的python镜像并上传到镜像仓库
  3. python 常用镜像源
  4. C语言中exit(0)与exit(1)的区别
  5. 企业宣传片背景音乐 有哪些震撼的推荐?
  6. Android关于线程优化以及性能优化的一些建议
  7. 时光倒流60年,重返少年时代
  8. 我抄我自己的论文,能算学术不端吗?有学者做了一份论文复用指南
  9. mysql数据库特点特性_简述MySQL数据库的特性和优势
  10. 彻底卸载VS2010