python之海龟绘图

海龟绘图(turtle)是一个Python内置的绘图库,也被称为“Turtle Graphics”或简称“Turtles”。它采用了一种有趣的绘图方式,模拟一只小海龟在屏幕上爬行,而小海龟爬行的路径就形成了绘制的图形。这种绘图方式最初源自20世纪60年代的Logo编程语言,后来一些Python程序员构建了turtle库,使得其他程序员可以通过简单的import turtle命令,在Python中使用海龟作图。

今天就来简单举几个例子!

一,小猪佩奇

from turtle import *def nose(x, y):  # 鼻子penup()  # 提起笔goto(x, y)  # 定位pendown()  # 落笔,开始画setheading(-30)  # 将乌龟的方向设置为to_angle/为数字(0-东、90-北、180-西、270-南)begin_fill()  # 准备开始填充图形a = 0.4for i in range(120):if 0 <= i < 30 or 60 <= i < 90:a = a + 0.08left(3)  # 向左转3度forward(a)  # 向前走a的步长else:a = a - 0.08left(3)forward(a)end_fill()  # 填充完成penup()setheading(90)forward(25)setheading(0)forward(10)pendown()pencolor(255, 155, 192)  # 画笔颜色setheading(10)begin_fill()circle(5)color(160, 82, 45)  # 返回或设置pencolor和fillcolorend_fill()penup()setheading(0)forward(20)pendown()pencolor(255, 155, 192)setheading(10)begin_fill()circle(5)color(160, 82, 45)end_fill()def head(x, y):  # 头color((255, 155, 192), "pink")penup()goto(x, y)setheading(0)pendown()begin_fill()setheading(180)circle(300, -30)circle(100, -60)circle(80, -100)circle(150, -20)circle(60, -95)setheading(161)circle(-300, 15)penup()goto(-100, 100)pendown()setheading(-30)a = 0.4for i in range(60):if 0 <= i < 30 or 60 <= i < 90:a = a + 0.08lt(3)  # 向左转3度fd(a)  # 向前走a的步长else:a = a - 0.08lt(3)fd(a)end_fill()def cheek(x, y):  # 腮color((255, 155, 192))penup()goto(x, y)pendown()setheading(0)begin_fill()circle(30)end_fill()def mouth(x, y):  # 嘴color(239, 69, 19)penup()goto(x, y)pendown()setheading(-80)circle(30, 40)circle(40, 80)def setting():  # 参数设置pensize(4)hideturtle()  # 使乌龟无形(隐藏)colormode(255)  # 将其设置为1.0或255.随后 颜色三元组的r,g,b值必须在0 .. cmode范围内color((255, 155, 192), "pink")setup(840, 500)speed(100)def ears(x, y):color((255, 155, 192), "pink")penup()goto(x, y)pendown()begin_fill()setheading(100)circle(-50, 50)circle(-10, 120)circle(-50, 54)end_fill()penup()setheading(90)forward(-12)setheading(0)forward(30)pendown()begin_fill()setheading(100)circle(-50, 50)circle(-10, 120)circle(-50, 56)end_fill()def eyes(x, y):color((255, 155, 192), "pink")fillcolor('white')penup()goto(x, y)pendown()begin_fill()setheading(0)circle(20)end_fill()color((255, 155, 192))fillcolor('white')penup()goto(x, y)begin_fill()forward(80)pendown()setheading(100)circle(20)end_fill()color('black')penup()goto(x-7, y+13)pendown()begin_fill()setheading(0)circle(5)end_fill()penup()goto(x, y)begin_fill()forward(60)pendown()setheading(100)circle(5)end_fill()def body(x, y):width(5)color('firebrick')list = ['orangered', 'firebrick']up()goto(x, y)down()setheading(-105)begin_fill()fillcolor(list[0])circle(250, 30)setheading(0)forward(138)setheading(75)circle(250, 30)end_fill()setheading(-45)forward(70)begin_fill()fillcolor(list[1])circle(5)end_fill()up()goto(x, y)down()setheading(-145)forward(70)begin_fill()circle(5)end_fill()up()goto(x+20, y-250/2-4)down()setheading(270)forward(50)left(90)width(10)color('black')forward(13)width(5)color('firebrick')up()goto(x + 120, y - 250 / 2-4)down()setheading(270)forward(50)left(90)width(10)color('black')forward(13)def main():body(-25, -15)setting()  # 画布、画笔设置nose(-100, 100)  # 鼻子head(-69, 167)  # 头ears(0, 160)  # 耳朵eyes(-15, 100)  # 眼睛cheek(80, 10)  # 腮mouth(-20, 30)  # 嘴done()if __name__ == '__main__':main()

运行结果:

二,哆啦A梦

import turtle as tt2=t.Turtle()def funa(x,y):t.pu()t.goto(x,y)t.dot(10,'red')t2.clear()t2.write('{},{}'.format(x,y),align='center',font=('黑体',20,'bold'))def huxian(x,y,r,a):t.pu()t.goto(x,y)t.pd()t.circle(r,a)def line2(x1,y1,x2,y2,c='black',size=1):t.color(c)t.pensize(size)t.pu()t.goto(x1,y1)t.pd()t.goto(x2,y2)def sanjiao(x,y,m,c,fc='black'):t.color(fc,c)t.pu()t.goto(x,y)t.pd()t.seth(90)t.begin_fill()t.circle(m,180)t.end_fill()def tuoyuan(x,y,st,s,c,b,ps=1,ang=0):t.pensize(ps)t.pu()t.goto(x,y)t.pd()t.seth(ang)a=stt.color(c,b)t.begin_fill()for i in range(120):if 0<=i<30 or 60<=i<90:a+=0.01*st.lt(3)t.fd(a)else:a-=0.01*st.lt(3)t.fd(a)t.end_fill()def head():tuoyuan(0,-44,7.0,0.0,'black','#00A0DE')tuoyuan(0,-49,6.0,0.03,'black','white')def eyes():tuoyuan(-25,133,1.0,4.0,'black','white')tuoyuan(32,133,1.0,4.0,'black','white')tuoyuan(-15,161,0.0,2,'black','black',1)          tuoyuan(23,161,0.0,2,'black','black',1)tuoyuan(-15,161,0.0,1,'black','white',1)    tuoyuan(23,161,0.0,1,'black','white',1)    def huzi():tuoyuan(-77,118,0.7,0,'#FFC5C8','#FFC5C8')tuoyuan(75,113,0.7,0,'#FFC5C8','#FFC5C8')    line2(-53,118,-136,149)line2(-50,95,-146,95)line2(-51,78,-139,52)line2(54,118,135,145)line2(55,95,150,95)line2(52,79,141,53)  def nose():tuoyuan(4,100,1,0.1,'black','#DB3A49')#line2(4,101,4,43)t.color('black')t.pu()t.goto(4,101)t.seth(-80)t.pd()t.circle(-300,12)tuoyuan(15,117,0.0,1.0,'white','white',1)  def setting():t.delay(0)  t.ht()#t.bgpic('./DLAM.gif')t.pensize(2)t.color('blue')t.bgcolor('white')t2.ht()t2.pu()t2.goto(0,-280)def mouth():t.pu()t.goto(-73,59)t.seth(-24)t.pd()t.color('black','#E92A14')t.begin_fill()t.circle(200,45)t.seth(-98)   t.circle(-77,165)t.end_fill()t.pu()t.goto(-32,2)t.seth(24)t.pd()t.color('black','#E74810')t.begin_fill()t.circle(-150,35)t.seth(-130)   t.circle(-70,90)t.end_fill()def xianglian():t.pu()t.goto(-66,-30)t.pd()t.color('black','#F53338')t.begin_fill()t.seth(-15)t.circle(260,26)t.seth(-80)t.fd(10)t.seth(-167)t.circle(-240,30)  t.seth(80) t.fd(12)t.end_fill()def lingdang():tuoyuan(-10,-80,1.0,0.1,'black','#FFD957',1)line2(-30,-60,10,-60,c='#E89F10',size=3)          line2(-10,-70,-10,-80,c='black') t.pu()t.goto(-10,-70)t.pd()t.color('black')t.begin_fill()t.seth(0)t.circle(2.5)t.end_fill()  t.pu()t.goto(-3,-50)  t.pd()t.pensize(3)t.color('white')t.seth(-50)t.circle(-100,2)def dupi():t.pu()t.goto(-50,-40)t.pd()t.color('black','white')t.begin_fill()t.seth(-140)t.circle(60,280)t.end_fill()t.pu()t.goto(-40,-90)t.pd()t.color('black','white')t.begin_fill()t.seth(0)t.fd(60)t.seth(-90)t.circle(-30,180)t.end_fill()  def body():t.color('black','#00A0DE')t.pu()t.goto(-73,-40)t.pd()t.begin_fill()t.seth(-140)t.circle(360,15)t.seth(-40)  t.fd(40) t.pu()t.goto(-89,-84)t.pd()t.seth(-90)t.circle(360,15)t.pu()t.goto(53,-176)t.pd()t.seth(80)t.circle(360,15)t.pu()t.goto(76,-134)t.pd()t.seth(40)  t.fd(40) t.seth(120)t.circle(330,15)t.end_fill()sanjiao(2,-178,10,'white')def feet():t.pu()t.goto(-113,-135)t.pd()t.color('black','white')t.begin_fill()t.seth(0)t.circle(23)t.end_fill()    t.pu()t.goto(85,-135)t.pd()t.color('black','white')t.begin_fill()t.seth(0)t.circle(23)t.end_fill()tuoyuan(-13,-192,1.0,5.0,'black','white',ang=90)tuoyuan(63,-192,1.0,5.0,'black','white',ang=90)def cat_name():t.pu()t.goto(80,-50)t.color('#0180DD')t.write('ドラえもん',font=('宋体',24,'normal'))   t.goto(120,-22)t.color('#dddddd')t.write('Doraemon',font=('宋体',20,'italic'))setting()head()eyes()
nose()
mouth()
huzi()
body()
dupi()
xianglian()
feet()
lingdang()cat_name()t.done()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/273470.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

elasticsearch篇:RestClient操作

1. RestClient ES官方提供了各种不同语言的客户端&#xff0c;用来操作ES。这些客户端的本质就是组装DSL语句&#xff0c;通过http请求发送给ES。官方文档地址&#xff1a;Elasticsearch Clients | Elastic 其中的Java Rest Client又包括两种&#xff1a; Java Low Level Res…

Microsoft SQL Server 编写汉字转拼音函数

目录 应用场景 举例 函数实现 小结 应用场景 在搜索应用中&#xff0c;我们一般会提供一个搜索框&#xff0c;输入关健字&#xff0c;点击查询按钮以获取结果数据。大部分情况我们会提供模糊查询的形式以在一个或多个字段进行搜索以获取结果。这样可以简化用户的操作&…

jvm八股

文章目录 运行时数据区域Java堆对象创建对象的内存布局对象的访问定位句柄直接指针 GC判断对象是否已死引用计数算法可达性分析算法 引用的类别垃圾收集算法分代收集理论标记清除算法标记复制算法标记整理算法 实现细节并发的可达性分析 垃圾收集器serial收集器ParNew收集器Par…

【PyTorch实战演练】深入剖析MTCNN(多任务级联卷积神经网络)并使用30行代码实现人脸识别

文章目录 0. 前言1. 级联神经网络介绍2. MTCNN介绍2.1 MTCNN提出背景2.2 MTCNN结构 3. MTCNN PyTorch实战3.1 facenet_pytorch库中的MTCNN3.2 识别图像数据3.3 人脸识别3.4 关键点定位 0. 前言 按照国际惯例&#xff0c;首先声明&#xff1a;本文只是我自己学习的理解&#xff…

【小黑送书—第十二期】>>一本书讲透Elasticsearch:原理、进阶与工程实践(文末送书)

Elasticsearch 是一种强大的搜索和分析引擎&#xff0c;被广泛用于各种应用中&#xff0c;以其强大的全文搜索能力而著称。 不过&#xff0c;在日常管理 Elasticsearch 时&#xff0c;我们经常需要对索引进行保护&#xff0c;以防止数据被意外修改或删除&#xff0c;特别是在进…

【Mining Data】收集数据(使用 Python 挖掘 Twitter 数据)

@[TOC](【Mining Data】收集数据(使用 Python 挖掘 Twitter 数据)) 具体步骤 第一步是注册您的应用程序。特别是,您需要将浏览器指向 http://apps.twitter.com,登录 Twitter(如果您尚未登录)并注册新应用程序。您现在可以为您的应用程序选择名称和描述(例如“Mining Demo”…

3.6研究代码(2)

指的是微电网运行参数。 在MATLAB中&#xff0c;randi([0,1],1,48) 会生成一个包含1*48个0或1的随机整数数组。这意味着数组中的每个元素都将是0或1。 MATLAB帮助中心&#xff1a;均匀分布的伪随机整数 - MATLAB randi - MathWorks 中国https://ww2.mathworks.cn/help/matlab/r…

java SSM流浪宠物救助与领养myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM流浪宠物救助与领养管理系统是一套完善的web设计系统&#xff08;系统采用SSM框架进行设计开发&#xff0c;springspringMVCmybatis&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系…

【自然语言处理】NLP入门(五):1、正则表达式与Python中的实现(5):字符串常用方法:对齐方式、大小写转换详解

文章目录 一、前言二、正则表达式与Python中的实现1.字符串构造2. 字符串截取3. 字符串格式化输出4.字符转义符5. 字符串常用函数函数与方法之比较 6. 字符串常用方法1. 对齐方式center()ljust()rjust() 2. 大小写转换lower()upper()capitalize()title()swapcase() 一、前言 本…

深入浅出计算机网络 day.1 概论② 因特网概述

当你回头看的时候&#xff0c;你会发现自己走了一段&#xff0c;自己都没想到的路 —— 24.3.9 内容概述 01.网络、互连&#xff08;联&#xff09;网与因特网的区别与联系 02.因特网简介 一、网络、互连&#xff08;联&#xff09;网与因特网的区别与联系 1.若干节点和链路互连…

[Java安全入门]三.URLDNS链

一.前言 在初步学习java的序列化和反序列化之后&#xff0c;这里学习java反序列化漏洞的一个利用链&#xff0c;也是比较基础的一条链。 由于URLDNS不需要依赖第三方的包&#xff0c;同时不限制jdk的版本&#xff0c;所以通常用于检测反序列化的点。 二.代码展开分析 构造链 …

STM32day2

1.思维导图 个人暂时的学后感&#xff0c;不一定对&#xff0c;没什么东西&#xff0c;为做项目奔波中。。。1.使用ADC采样光敏电阻数值&#xff0c;如何根据这个数值调节LED灯亮度。 while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */adc_val HAL_ADC_GetValue(&a…

微信小程序(五十三)修改用户头像与昵称

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.外界面个人资料基本模块 2.资料修改界面同步问题实现&#xff08;细节挺多&#xff0c;考虑了后期转服务器端的方便之处&#xff09; 源码&#xff1a; app.json {"window": {},"usingCompone…

从零搭建React18.2+ReactRoute6.22+TS5+RTK2.2搭配antd5+antd-style书写All in Js完整体验项目规范

1. 使用CRA创建项目 全局设置npm淘宝镜像源 npm config set registry https://registry.npmmirror.com -g使用最新版create-react-app初始化项目结构 npx create-react-app custom-template --template typescript初始化项目之后在package.json文件中配置使用node>18.0.0…

【linux】02 :Linux基础命令

1.掌握linux系统的目录结构 linux只有一个顶级目录&#xff0c;称之为&#xff1a;根目录。 windows系统有多个顶级目录&#xff0c;即各个盘符。 2.linux路径的描述方式 /在Linux中的表示&#xff1a;出现在开头表示根目录&#xff0c;出现在后面表示层级关系。 3.什么是命…

【数据库系统概论】第2章:关系数据库

文章目录 0. 前言2.1 关系数据结构及形式化定义2.1.1关系2.1.2 关系模式 2.2 关系操作2.3 关系的完整性2.4 关系代数 0. 前言 关系数据库系统是支持关系模型的数据库系统。第一章初步介绍了关系模型及其基本术语。本章将深入介绍关系模型。 按照数据模型的三个要素&#xff0c;…

考研经验|如何从考研失败中走出来?

对我来说&#xff0c;太丢人了 其实我在本科的时候在同学眼中&#xff0c;一直很优秀&#xff0c;每年奖学金必有我的&#xff0c;国家励志奖学金&#xff0c;国家奖学金&#xff0c;这种非常难拿的奖学金&#xff0c;我也拿过&#xff0c;本科期间学校有一个公费去新西兰留学的…

TimescaleDB 开源时序数据库

文章目录 1.TimescaleDB介绍2.Hypertable 和 chunk3.Hypertable4.Hypertable操作 开源中间件 # TimescaleDBhttps://iothub.org.cn/docs/middleware/ https://iothub.org.cn/docs/middleware/timescale/timescale-summary/1.TimescaleDB介绍 TimescaleDB是基于PostgreSQL数据…

denied: requested access to the resource is denied报错解决

Docker 镜像在文件中包含一组指令&#xff0c;可在 Docker 容器中执行代码。大多数情况下&#xff0c;在创建 docker 镜像之后&#xff0c;当尝试将镜像推送到远程仓库时&#xff0c;会发生这种类型的报错“Docker denied: requested access to the resource is denied” 由于错…

图论练习6

[NOIP2013]车站分级 Here 解题思路 由于起始点之间所选的站号&#xff0c;相互之间一定满足那么对于起始点间未选择的站号&#xff0c;一定满足选择的站号考虑用边来维护信息&#xff0c;表示的级别大于按题意&#xff0c;则车站会被分为几个联通块&#xff0c;且保证块内无环…