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()
相关文章:

python之海龟绘图
海龟绘图(turtle)是一个Python内置的绘图库,也被称为“Turtle Graphics”或简称“Turtles”。它采用了一种有趣的绘图方式,模拟一只小海龟在屏幕上爬行,而小海龟爬行的路径就形成了绘制的图形。这种绘图方式最初源自20…...
Java实战:Spring Boot 实现异步记录复杂日志
日志记录是软件开发中非常重要的一环,它可以帮助我们快速定位问题、监控程序运行状态等。在 Spring Boot 应用中,异步记录日志是一种常见的需求。本文将详细介绍如何在 Spring Boot 中实现异步记录复杂日志,包括异步日志的基本原理、实现方式…...

“色狼”用英语怎么说?柯桥日常英语,成人英语口语学习
最近有粉丝问我"色狼"英文翻译是啥 首先声明不是"colour wolf"哈 关于“色狼”的英文表达有很多 快和C姐一起来看看吧! 1.pervert 这个单词的意思是变态、色狼 是对性变态者最直观的描述 He is such a pervert! I saw him lo…...

Docker前后端项目部署
目录 一、搭建项目部署的局域网 二、redis安装 三、MySQL安装 四、若依后端项目搭建 4.1 使用Dockerfile自定义镜像 五、若依前端项目搭建 一、介绍前后端项目 一张图带你看懂ruoyi的前后端项目部署 得出结论:需要4台服务器,都处于同一个局域网中…...
如何快速的搭建一个小程序
要快速搭建一个小程序,你可以按照以下步骤进行: 明确目标和需求:在开始搭建小程序之前,首先明确你的小程序的主要功能、目标用户以及希望实现的业务需求。这将帮助你更好地规划和设计小程序。选择小程序平台:根据你的…...
STM32自学☞AD多通道
涉及到的硬件有:光敏传感器,热敏传感器,红外对射传感器,电位器 通过adc将他们采集的模拟信号转换为数值 ad.c文件 #include "stm32f10x.h" #include "stm32f10x_adc.h" #include "ad.h" #inc…...

微服务之商城系统
一、商城系统建立之前的一些配置 1、nacos Nacos是一个功能丰富的开源平台,用于配置管理、服务发现和注册、健康检查等,帮助构建和管理分布式系统。 在linux上安装nacos容器的命令: docker run --name nacos-standalone -e MODEstandalone …...

安卓玩机工具推荐----高通芯片9008端口读写分区 备份分区 恢复分区 制作线刷包 工具操作解析
上期解析了下adb端口备份分区的有关操作 安卓玩机工具推荐----ADB状态读写分区 备份分区 恢复分区 查看分区号 工具操作解析 在以往的博文中对于高通芯片机型的分区读写已经分享了很多。相关类似博文 安卓备份分区----手动查询安卓系统分区信息 导出系统分区的一些基本操作 …...
全量知识系统问题及SmartChat给出的答复 之16 币圈生态链和行为模式
Q.42 币圈生态链和行为模式 我认为,上面和“币”有关的一系列概念和技术,按设计模式的划分 ,整体应该都属于行为模式,而且应该囊括行为模式的所有各个方面。 而行为又可以按照三种不同的导向(以目的或用途为导向、过…...

【MOMO_Tips】批量将word转换为PDF格式
批量将word转换为PDF格式 1.打开文件–>选项–>自定义功能区–>开发工具–>确定 2.点开开发工具,选择第一个visual basic 3.进入页面后找到插入–>模块,就可以看到这样的画面之后将下列vba代码复制粘贴到模块中 Sub ConvertWordsToPd…...

【JSON2WEB】08 Amis的事件和校验
【JSON2WEB】01 WEB管理信息系统架构设计 【JSON2WEB】02 JSON2WEB初步UI设计 【JSON2WEB】03 go的模板包html/template的使用 【JSON2WEB】04 amis低代码前端框架介绍 【JSON2WEB】05 前端开发三件套 HTML CSS JavaScript 速成 【JSON2WEB】06 JSON2WEB前端框架搭建 【J…...
抖店类目报白什么意思?什么类目需要报白?这次给你讲明白!
我是电商珠珠 不少新手在选择类目的时候,有些类目却无法选择,系统显示需要报白才可以。那什么是报白?怎么报白?今天我就一次性给你们讲清楚。 抖店类目报白什么意思? 根据官方的说法,报白就是针对一些比…...

<C++>【继承篇】
✨前言✨ 🎓作者:【 教主 】 📜文章推荐: ☕博主水平有限,如有错误,恳请斧正。 📌机会总是留给有准备的人,越努力,越幸运! 💦导航助手…...
size_t 和double相乘怎么转换size_t
在C中,size_t和double可以直接相乘,结果会自动转换为double类型。如果你想要得到的结果是size_t类型,你需要进行显式类型转换。但是要注意,double转size_t可能会丢失小数部分,只保留整数部分。 以下是一个例子&#x…...
C# 的一些好用的语法糖介绍
C# 中有很多语法糖(Syntactic sugar),它们是一些语言特性,使得编写代码更加简洁、易读、更具表现力。 Lambda 表达式: Lambda 表达式允许你编写简洁的匿名函数。例如: Func<int, int, int> add (a…...

驱动开发面试复习
创建字符设备 1 创建设备号 alloc_chrdev_region 2.创建cdev cdev_init 3.添加一个 cdev,完成字符设备注册到内核 cdev_add 4.创建类 class_create 5.创建设备 device_create 1.内核空间与用户空间数据 copy_from_user 和copy_to_user 俩个函数来完成。 copy_from_user 函数…...

监测数据计算与换算:确保工程安全的关键步骤
在工程项目中,监测数据的计算与换算是一项至关重要的工作,它直接关系到工程的安全与稳定。本文将从确定基准值、数据计算与换算、异常值处理以及数据存储等方面,探讨监测数据计算与换算的主要工作内容。 添加图片注释,不超过 140 …...

Vue项目实战--空间论坛(1)
环境准备 安装好node.js,Vue后 添加插件 router---路由,多页面的应用 vuex---在多个组件之间维护同一个数据 添加依赖 bootstrap---美工 popperjs/core vue项目介绍 views-----对应vue文件,页面 router-----路由,页面,c…...
linux内核驱动——字符设备实现两个终端单向收发
linux内核驱动——字符设备实现两个终端单向收发 参考 Ubuntu18.04添加内核模块(字符设备) 创建内核驱动文件chat_dev.c: #include <linux/init.h> //定义了module_init #include <linux/module.h> //最基本的头文件&a…...
读取CSV数据并写入MySQL
import pandas as pd #import tushare as ts from sqlalchemy import create_engineimport baostock as bs #### 登陆系统 #### lg bs.login() # 显示登陆返回信息 print(login respond error_code:lg.error_code) print(login respond error_msg:lg.error_msg) #### 获取沪深…...

【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...

C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...

人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...

Razor编程中@Html的方法使用大全
文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...

通过MicroSip配置自己的freeswitch服务器进行调试记录
之前用docker安装的freeswitch的,启动是正常的, 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...
Spring Boot + MyBatis 集成支付宝支付流程
Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例(电脑网站支付) 1. 添加依赖 <!…...

篇章二 论坛系统——系统设计
目录 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 1. 数据库设计 1.1 数据库名: forum db 1.2 表的设计 1.3 编写SQL 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 通过需求分析获得概念类并结合业务实现过程中的技术需要&#x…...