Python教程91:海龟画图turtle画(三角形、正方形、五边形、六边形、圆、同心圆、边切圆,五角星,椭圆)

news2024/12/24 11:40:25

---------------turtle源码集合---------------

Python教程91:关于海龟画图,Turtle模块需要学习的知识点

Python源码49:海龟画图turtle画美国旗

Python教程48:海龟画图turtle画太极八卦阵

Python源码47:海龟画图turtle画巴斯光年

Python源码46:海龟画图turtle画坤坤

Python源码45:海龟画图turtle画雪容融

Python源码44:海龟画图turtle,画2022卡塔尔世界杯吉祥物

Python教程43:海龟画图turtle画小樱魔法阵

Python教程42:海龟画图turtle画海绵宝宝

Python教程41:海龟画图turtle画蜡笔小新

Python教程40:使用turtle画一只杰瑞

Python教程39:使用turtle画美国队长盾牌

Python教程38:使用turtle画动态粒子爱心+文字爱心

Python教程37:使用turtle画一个戴帽子的皮卡丘

Python教程36:海龟画图turtle写春联

Python源码35:海龟画图turtle画中国结

Python源码31:海龟画图turtle画七道彩虹

Python源码30:海龟画图turtle画紫色的小熊

Python源码29:海龟画图turtle画太极图

Python源码28:海龟画图turtle画熊猫

Python源码27:海龟画图turtle画动态圆舞曲

Python源码26:海龟画图turtle画向日葵

Python源码25:海龟画图turtle画小猪佩奇

Python源码24:使用海龟画图turtle画滑板

Python源码23:使用海龟画图turtle画小狗狗

Python源码22:使用海龟画图turtle画今天日期

Python源码21:使用海龟画图turtle画太阳,云朵,房子,绿树

Python源码20:使用海龟画图turtle画一个会动的星空

Python源码19:海龟画图turtle画螺旋的彩色的逐渐放大的文字

Python源码18:使用海龟画图turtle画捂脸表情

Python源码17:使用海龟画图turtle画五星红旗

Python源码16:使用海龟画图turtle画会动的时钟

Python源码15:使用海龟画图turtle画小黄人

Python源码14:使用海龟画图turtle画我的城堡

Python源码分享13:使用海龟画图turtle画一个会眨眼的皮卡丘

Python源码分享12:使用turtle画彩色六边形

Python源码分享11:使用海龟画图turtle画航天火箭

Python源码分享10:使用海龟画图turtle画哆啦A梦

Python源代码分享:02海龟画图五角星

Python源代码分享:03画一个奥运五环图

Python源代码分享:05使用turtle模块绘制一个彩色螺旋图案

Python源代码分享:07画满天繁星

Python源码分享08:使用turtle画一朵玫瑰花

Python源码分享10:使用海龟画图turtle画哆啦A梦

Python源码分享11:使用海龟画图turtle画航天火箭

Python源码分享12:使用turtle画彩色六边形

1.三角形、正方形、五边形、六边形的绘制
在这里插入图片描述

# @Author : 小红牛
# 微信公众号:WdPython
import turtle as t

t.setup(1000, 500)  # 画布的大小及位置
t.penup()
t.goto(-400, 100)
t.pendown()
t.pensize(5)  # 画笔的粗细

# 1. 三角形
t.color("purple")
for i in range(3):
    t.fd(100)
    t.seth(-120 * (i+1))

# 2.正方形
t.penup()
t.fd(200)
t.pendown()
t.color("blue")
for i in range(4):
    t.fd(100)
    t.seth(-90 * (i+1))

# 3.正五边形
t.penup()
t.fd(200)
t.pendown()
t.color("red")
for i in range(5):
    t.fd(100)
    t.seth(-72 * (i+1))

# 4. 正六边形
t.penup()
t.fd(250)
t.pendown()
t.color("green")
for i in range(6):
    t.fd(100)
    t.seth(-60 * (i+1))

t.done()

2.圆、同心圆、边切圆

# 2.1画圆,绘制一个指定半径和角度e的圆或弧线
turtle.circle(30)
circle(50,steps=3) # 三角形
circle(120, 180) # 半圆

2.2绘制边切圆
在这里插入图片描述

# @Author : 小红牛
# 微信公众号:WdPython
import turtle as t
t.pensize(2)

t.color('red')
t.circle(20)
t.color('green')
t.circle(40)
t.color('blue')
t.circle(80)
t.color('black')
t.circle(100)
t.done()

'''
# 可以使用for循环实现,使用列表存放颜色和半径
import turtle
color = ['red','green','blue','black']
r = [20,40,80,100]
for i in range(4):
    t.pencolor(color[i])
    t.circle(r[i])
t.done()
'''

2.3.绘制同心圆,第一个圆以坐标 (0.00, -20.00)起笔,同心圆半径的坐标为(0,0)。由第一个圆的起笔位置,来确定第二个圆的起笔位置。

确定圆心,即第一个圆的位置。

确定圆的大小。

移动画笔到下一个圆的圆心位置。

重复画圆的过程。
在这里插入图片描述

import turtle as t

colors = ["red", "purple", "skyblue", "yellow", "hotpink", "green", "blue", "black", "darkred"]
# 圆的颜色
r = [20, 30, 60, 90, 120, 180, 210]
# 圆的半径
t.pensize(2)

for i in range(7):
    t.penup()
    t.goto(0, -r[i])
    # 第一个圆以坐标 (0.00, -20.00)起笔,同心圆半径的坐标为(0,0)
    print(t.position())
    t.pendown()
    t.pencolor(colors[i])
    t.circle(r[i])

t.done()

3.画五角星

import turtle as t

t.color('red')

# 画五角星
for _ in range(5):
    t.forward(200)
    t.right(144)

# 关闭窗口
t.done()

4.通过椭圆公式x2/a2+y2/b2=1 通过改变x值来得到y的值下面这代码,通过改变a和b的值即可得到相应椭圆。
在这里插入图片描述

import turtle as t
import math

a = 120  # 椭圆的长半轴
b = 80  # 椭圆的短半轴

t.penup()
t.goto(-a, 0)
t.pendown()

for i in range(a * 2 + 1):
    y = math.sqrt((b * b) * (1 - (((i - a) ** 2) / (a * a))))
    t.goto(i - a, y)

t.penup()
t.goto(-a, 0)
t.pendown()

for i in range(a * 2 + 1):
    y = -math.sqrt((b * b) * (1 - (((i - a) ** 2) / (a * a))))
    t.goto(i - a, y)

t.done()

完毕!!感谢您的收看

----------★★历史博文集合★★----------
我的零基础Python教程,Python入门篇 进阶篇 视频教程 Py安装py项目 Python模块 Python爬虫 Json Xpath 正则表达式 Selenium Etree CssGui程序开发 Tkinter Pyqt5 列表元组字典数据可视化 matplotlib 词云图 Pyecharts 海龟画图 Pandas Bug处理 电脑小知识office自动化办公 编程工具
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux查看各端口网络带宽使用情况

1.安装iftop: yum install -y iftop 2.使用 安装好后在服务器执行iftop -i ens33 就可以查看服务器公网网卡带宽使用情况(如果只执行iftop默认检测第一块网卡使用情况,这样查的会是内网网卡ens33 。 iftop -i ens33 -P 显示进出子网的流量 如果您在子网中&…

聚道云连接器助力钉钉与金蝶云星辰无缝对接,实现多维度数据同步

客户介绍 某企业服务有限公司专注于为企业提供全方位、高质量的企业服务,致力于于企业管理咨询、企业形象策划、市场营销策划、财务管理咨询等方面。该公司拥有一支经验丰富、专业化的团队,他们深入了解企业需求,为客户提供个性化的解决方案…

Ultralist 面向技术人员的命令行任务管理系统

Ultralist CLI 是一个简单且非常快速的命令行任务管理系统。它源于大卫艾伦(David Allen)推广的“把事情做好”(Getting Things Done)理念。作者是GTD的忠实粉丝,每天都在使用它。作者一直在寻找一个轻量级的任务管理系…

商城系统中30分钟未付款自动取消订单怎么实现(简单几种方法)

实现以上功能 方法1:定时任务批量执行 写一个定时任务,每隔 30分钟执行一次,列出所有超出时间范围得订单id的列表 AsyncScheduled(cron "20 20 1 * * ?")public void cancelOrder(){log.info("【取消订单任务开始】"…

Vue 动态组件与异步组件:深入理解与全面应用

聚沙成塔每天进步一点点 本文内容 ⭐ 专栏简介1. 动态组件实现原理:用法示例: 2. 异步组件实现原理:用法示例: 3. 异步组件的高级应用a. 异步组件的命名:b. 异步组件的加载状态管理: ⭐ 写在最后 ⭐ 专栏简…

常用芯片学习——HC244芯片

HC573 三态输出八路缓冲器|线路驱动器 使用说明 SNx4HC244 八路缓冲器和线路驱动器专门设计用于提高三态存储器地址驱动器、时钟驱动器以及总线导向接收器和发送器的性能和密度。SNx4HC244 器件配备两个具有独立输出使能 (OE) 输入的 4 位缓冲器和驱动器。当 OE 为低电平时&a…

1130 - Host 182.244.45,94‘ is not allowed to connect to this MySQL server

1130 - Host 182.244.45,94’ is not allowed to connect to this MySQL server MySQL错误代码 1130 表明连接 MySQL 服务器的主机被拒绝。在这个错误消息中,你提到的是主机 “182.244.45.94”,但可能有一个小错误,IP 地址中的逗号应该是点&…

《Linux系列》Linux虚拟机,LVM逻辑卷扩容,xfs文件系统扩容

Linux虚拟机,LVM逻辑卷扩容,xfs文件系统扩容 1 虚拟机配置介绍 在创建虚拟机的时候只给了20G磁盘空间大小,但是现在需求变更,想要增加到40G磁盘空间大小,所以需要通过两步扩容磁盘空间。 系统版本是Centos7 根目录…

01.Elasticsearch应用(一)

Elasticsearch应用(一) 1.什么是ELK ELK是一个免费开源的日志分析架构技术栈总称,包含三大基础组件,分别是Elasticsearch、Logstash、Kibana。但实际上ELK不仅仅适用于日志分析,它还可以支持其它任何数据搜索、分析和…

【算法专题】动态规划之路径问题

动态规划2.0 动态规划 - - - 路径问题1. 不同路径2. 不同路径Ⅱ3. 珠宝的最高价值4. 下降路径最小和5. 最小路径和6. 地下城游戏 动态规划 - - - 路径问题 1. 不同路径 题目链接 -> Leetcode -62.不同路径 Leetcode -62.不同路径 题目:一个机器人位于一个 m …

【taro react】 ---- 自动化【根据运行命令直接编译对应的是测试环境或正式环境】

1. 场景 开发和发布程序中遇到最常见的问题,需要一个环境配置文件,然后在启动或者编译前,需要开发者去修改对应的环境变量来控制启动或者编译的环境是测试环境还是正式环境。同时如果是需要维护小程序的 Jenkins 自动上传,就会更加的麻烦,上传的小程序越多,我们需要维护…

jssip挂断事件(ended),通话结束判断主叫挂断、被叫挂断还是系统挂断

需求 项目中使用jssip,在被叫挂断电话时播放提示音:对方已挂断 。显然在ended事件中加就可以,但是遇到个问题,当主叫挂断时也会播放,没办法找解决方法呗。 解决方法 遇事不决找api,但是这个官方api太狗了…

Linux7 安装 Oracle 19C RAC 详细图文教程

实战篇:Linux7 安装 Oracle 19C RAC 详细图文教程 本文是按照:https://www.modb.pro/db/154424的思路进行编写 一、安装前规划 安装RAC前,当然要先做好规划。具体包含以下几方面: 节点主机版本主机名实例名Grid/Oracle版本Publi…

OpenKruiseGame × KubeSphere 联合发布游戏服运维控制台,推动云原生游戏落地

作者:云原生游戏社区 近日,云原生游戏开源社区旗下 OpenKruiseGame(以下简称:OKG)基于 KubeSphere 4.0 LuBan 架构开发的游戏服运维控制台 OKG Dashboard 正式发布!现已上架 KubeSphere Marketplace 云原生…

【C++】C++封装三大特性

P110 深拷贝:在堆区申请空间,进行拷贝操作,需要手工释放申请空间 浅拷贝:简单的复制拷贝操作 c初始化列表属性: 静态成员函数不可访问静态成员函数,原因,静态成员函数初始化在程序初始化的时候…

【分布式技术专题】「分布式技术架构」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)

探索Tomcat技术架构设计模式的奥秘 Tomcat系统架构分析Tomcat 整体结构Tomcat总体结构图以 Service 作为“婚姻”1) Service 接口方法列表 2) StandardService 的类结构图方法列表 3) StandardService. SetContainer4) StandardService. addConnector 以 Server 为“居”1) Ser…

SpringSecurity认证登录成功后获取角色菜单

目录 前言 一、RBAC模型 二、实战应用 1. 建立用户、角色、资源实体类 2. 数据层查询角色资源 3. 业务层实现,调用数据层查询接口 4. SystemController控制器菜单获取方法 5. menu.jsp菜单页面实现 前言 本篇文章接SSM项目集成Spring Security 4.X版本&…

捆扎打包机的选择使用以及维修

捆包机又称打包机或捆扎机,是使用捆扎带缠绕产品或包装件,然后收紧并将两端通过热效应熔融或使用包扣等材料连接的机器。捆包机的功用是使塑料带能紧贴于被捆扎包件表面,保证包件在运输、贮存中不因捆扎不牢而散落,同时还使捆扎整…

MySQL也开始支持JavaScript了

2023 年 12 月 16 日,Oracle 公司在一篇名为 《Introducing JavaScript support in MySQL》的文章中宣布 MySQL 数据库服务器将开始支持 JavaScript 语言。 这个举措标志着继PostgreSQL之后, MySQL 也支持使用 JavaScript 编写函数和存储过程了。作为最…

SQL注入示例

例一、基础SQL注入:load_file读文件 CISP-PTE 认证考试 首先是有单引号和括号的,首要是要闭合,然后回显点是在-1的位置,读取文件上面的key的话使用的是load_file(/tmp/360/key) id-1)%09ununionion%09select%091,2,3,load_file…