【用Python画画】六一儿童节画爱心

本文收录于 《Python编程入门》专栏,从零基础开始,分享一些Python编程基础知识,欢迎关注,谢谢!

文章目录

    • 一、前言
    • 二、代码示例
    • 三、知识点梳理
    • 四、总结

一、前言

本文介绍如何使用Python的海龟画图工具turtle,画一个大大的爱心。

  • 什么是Python?

    Python是由荷兰人吉多·范罗苏姆于1990年代初设计的一门编程语言,应用领域非常广泛,尤其在数据分析、人工智能领域,已经成为最受欢迎的程序设计语言之一,比较适合新手学习。

    这门编程语言之所以叫Python,意为大蟒蛇,是因为当时有一个电视喜剧《蒙提·派森的飞行马戏团》(Monty Python’s Flying Circus)在热播,很受大家喜欢。

  • 什么是海龟画图工具turtle?

    turtle,中文意思为海龟,是Python语言中自带的一个用于绘制图像的函数库。turtle函数库为使用者提供一个或多个小乌龟作为画笔,使用者可通过turtle库提供的各种方法来控制小乌龟在一个平面直角坐标系中移动并绘制移动轨迹以画出想要的图案。

二、代码示例

首先,看一下使用Python画的爱心是什么样的?
在这里插入图片描述

之后,看一下对应的Python代码,如下:

# 导入海龟画图工具turtle库
import turtle# 设置画笔颜色为red、填充颜色为pink
turtle.color('red', 'pink')# 设置线条的粗细
turtle.pensize(2)# 画笔落下,移动时将画线
turtle.pendown()# 设置海龟的朝向,向150度西北方向移动。
turtle.setheading(150)# 开始填充形状
turtle.begin_fill()# 海龟前进指定的距离,方向为海龟的朝向
turtle.fd(50)# 绘制一个指定半径和角度圆
turtle.circle(50 * -3.745, 45)# 绘制一个指定半径和角度圆
turtle.circle(50 * -1.431, 165)# 海龟左转指定的角度
turtle.left(120)# 绘制一个指定半径和角度圆
turtle.circle(50 * -1.431, 165)# 绘制一个指定半径和角度圆
turtle.circle(50 * -3.745, 45)# 海龟前进指定的距离,方向为海龟的朝向
turtle.fd(50)# 结束填充形状
turtle.end_fill()# 开始事件循环,必须作为一个海龟绘图程序的结束语句
turtle.mainloop()

三、知识点梳理

  • turtle.color(*args)
    返回或设置画笔颜色和填充颜色。

比如:turtle.color(‘red’, ‘pink’),设置画笔颜色为red、填充颜色为pink;

  • turtle.pensize(width=None)

设置线条的粗细为 width 或返回该值。如果 resizemode 设为 “auto” 并且 turtleshape 为多边形,该多边形也以同样组细的线条绘制。如未指定参数,则返回当前的 pensize。

  • turtle.pendown()

画笔落下 – 移动时将画线。

  • turtle.penup()

画笔抬起 – 移动时不画线

  • turtle.setheading(to_angle)

    参数:

    to_angle – 一个数值 (整型或浮点型)

设置海龟的朝向为 to_angle,坐标值正东方向为0度,正北方向为90度。

  • turtle.begin_fill()
    开始填充图形,在绘制要填充的形状之前调用。

  • turtle.end_fill()
    结束填充图形,填充上次调用 begin_fill() 之后绘制的形状。

  • turtle.fd(distance)

    参数:

    distance – 一个数值 (整型或浮点型)

海龟前进 distance 指定的距离,方向为海龟的朝向。

  • turtle.circle(radius, extent=None, steps=None)
    参数:
    radius – 一个数值
    extent – 一个数值 (或 None)
    steps – 一个整型数 (或 None)

绘制一个 radius 指定半径的圆。圆心在海龟左边 radius 个单位;extent 为一个夹角,用来决定绘制圆的一部分。如未指定 extent*则绘制整个圆。如果 *extent 不是完整圆周,则以当前画笔位置为一个端点绘制圆弧。如果 radius 为正值则朝逆时针方向绘制圆弧,否则朝顺时针方向。最终海龟的朝向会依据 extent 的值而改变。

圆实际是以其内切正多边形来近似表示的,其边的数量由 steps 指定。如果未指定边数则会自动确定。此方法也可用来绘制正多边形。

  • turtle.left(angle)
    参数:
    angle – 一个数值 (整型或浮点型)

海龟左转 angle 个单位。(单位默认为角度)

  • turtle.mainloop()
    开始事件循环 - 调用 Tkinter 的 mainloop 函数。必须作为一个海龟绘图程序的结束语句。

四、总结

以上介绍了如何使用Python的海龟画图工具turtle画爱心。另外,对代码中涉及的Python编程知识点,做了简单的介绍。希望对大家有帮助,谢谢关注。

如果您对文章中内容有疑问,欢迎在评论区进行留言,我会尽量抽时间给您回复。如果文章对您有帮助,欢迎点赞、收藏。您的点赞,是对我最大的支持和鼓励,谢谢 :-)

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

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

相关文章

linux中如和查找端口是否被占用

在Linux系统中&#xff0c;可以使用以下命令来查找特定端口是否被占用&#xff1a; 使用netstat命令&#xff1a; netstat -tuln | grep <port_number>其中&#xff0c;-t表示TCP协议&#xff0c;-u表示UDP协议&#xff0c;-l表示监听状态&#xff0c;-n表示显示端口号…

Docker从安装开始精通

从虚拟机到容器 1.环境配置的难题 软件开发最大的麻烦事之一&#xff0c;就是环境配置。用户计算机的环境都不相同&#xff0c;你怎么知道自家的软件&#xff0c;能在那些机器跑起来&#xff1f; 用户必须保证两件事&#xff1a;操作系统的设置&#xff0c;各种库和组件的安装…

堆排序的实现

在上一篇博客中&#xff0c;介绍了堆的实现&#xff0c;现在来介绍一下堆排序。 一.打印有序&#xff1a; 现在先给一个无序的数组&#xff0c;现在我们利用我们实现的堆的功能先完成一下打印排序&#xff1a; 在for循环里是一个建堆的过程&#xff0c;每来一个数据就放入堆中…

c++ map/multimap容器

在C中&#xff0c;std::map 和 std::multimap 是两种关联容器&#xff0c;它们包含了可重复的&#xff08;对于 multimap&#xff09;或唯一的&#xff08;对于 map&#xff09;键值对。这些容器都根据它们的键自动排序&#xff0c;并允许非常快速地根据键查找、插入和删除元素…

监控易监测对象及指标之:深入监测Exchange 2013邮件服务器的关键指标

在当今的信息化时代&#xff0c;Exchange 2013邮件服务器因其高效、稳定的特点被广泛应用于企业通信中。为了确保邮件服务器的持续稳定运行&#xff0c;及时发现并解决潜在问题至关重要。监控易作为一款功能强大的监控工具&#xff0c;为Exchange 2013邮件服务器提供了一系列细…

linux进程的加载和启动过程分析

我们的源代码通过预处理,编译,汇编,链接后形成可执行文件,那么当我们在终端敲下指令$ ./a.out argv1 argv2 后,操作系统是怎么将我们的可执行文件加载并运行的呢? 首先知道,计算机的操作系统的启动程序是写死在硬件上的,每次计算机上电时,都将自动加载启动程序,之后…

python第五次作业

1.请实现一个装饰器&#xff0c;每次调用函数时&#xff0c;将函数名字以及调用此函数的时间点写入文件中 # 导入datetime模块&#xff0c;用于获取当前时间并格式化输出 import datetime# 定义一个装饰器工厂函数log_funcName_time&#xff0c;它接受一个参数time def log_fu…

红外听力教学考试系统-红外语音听力广播在大学英语四六级听力考试中应用

红外听力教学考试系统-红外语音听力广播在大学英语四六级听力考试中的应用 由北京海特伟业科技有限公司任洪卓发布于2024年6月1日 红外语音听力广播&#xff08;即红外听力教学考试系统&#xff09;在英语四六级听力考试的应用正日益凸显出其重要性和优越性。在当前的高等教育…

xcode删除依赖包package,删除不必要的依赖项

点击项目&#xff0c;然后点击PROJECT项里面的Package DepenDependencies&#xff1a; 选中一个依赖项&#xff0c;然后点击减号&#xff0c;就可以把依赖项删除掉了&#xff0c;左侧项目下面的Package已经没有了这个依赖项 TARGET下面的package也要删除&#xff1a;在这里删除…

【C++】【Windows】程序加载DLL库时依次查找哪些目录

搜索的顺序通常如下&#xff1a; 应用程序目录&#xff1a;首先&#xff0c;系统会在包含可执行文件&#xff08;EXE&#xff09;的目录中查找DLL。系统目录&#xff1a;接下来&#xff0c;系统会在Windows系统目录中查找&#xff0c;比如 C:\Windows\System32。16位系统目录&…

人工智能与未来工作:未来已来,你准备好了吗?

1. 引言 随着人工智能技术的飞速发展&#xff0c;它正在逐渐渗透到我们生活的方方面面&#xff0c;尤其是工作领域。本文将探讨人工智能的基本概念&#xff0c;它在不同行业的应用&#xff0c;以及它对未来就业市场和教育体系可能带来的影响。 2. 人工智能的基本概念 2.1 定…

ESP32S3外设学习笔记

GPIO ESP32的GPIO&#xff08;通用输入输出&#xff09;引脚非常灵活&#xff0c;支持多种工作模式。这些模式可以通过编程来配置&#xff0c;以适应不同的应用需求。以下是ESP32 GPIO引脚的主要工作模式&#xff1a; 1. 输入模式 普通输入模式&#xff1a;在这种模式下&…

dubbo复习:(14)通过上下文传递附加数据

服务调用和响应时&#xff0c;除了请求的方法和返回的响应&#xff0c;还可以通过上下文(Context)传递更多的数据(附加数据&#xff09; 一、接口定义 package cn.edu.tju.service;public interface ContextService {String invoke(String param); }二、服务端接口实现&#x…

OA前端用什么开发:深入探索技术选型与最佳实践

OA前端用什么开发&#xff1a;深入探索技术选型与最佳实践 在开发OA&#xff08;办公自动化&#xff09;系统的前端时&#xff0c;技术选型是至关重要的一步。它不仅决定了系统的外观和用户体验&#xff0c;还直接影响到系统的性能、安全性和可维护性。本文将从四个方面、五个…

nuxt3 api如何透传(不引第3方库)

背景&#xff1a; nuxt做为一个vue的服务端渲染框架&#xff0c;本身就具备服务端的功能&#xff0c;理论上可以完整做一个系统功能&#xff0c;包括对数据库等等操作&#xff0c;但更合理的做法是nuxt应该定位只做服务端渲染的事情&#xff0c;更偏向ui层面&#xff0c;而非数…

大数据分析统计

大数据分析统计 from datetime import datetimeimport pandas as pd import matplotlib.pyplot as pltpm25files [PM2.5_2021.csv, PM2.5_2022.csv, PM2.5_2023.csv] pm10files [PM10_2021.csv, PM10_2022.csv, PM10_2023.csv]def read_csv_file(files):# 每个文件都有表头…

C++之类(class)的三种成员修饰符(public、private、protected)总结

1、背景介绍 在C中&#xff0c;类&#xff08;class&#xff09;中成员的三种访问修饰符&#xff08;access specifiers&#xff09;用于控制类的成员&#xff08;属性和方法&#xff09;的访问权限。这些修饰符决定了类成员在类的外部和内部是否可以被访问。以下是这三种访问…

macOS上编译android的ffmpeg及ffmpeg.c

1 前言 前段时间介绍过使用xcode和qt creator编译调试ffmepg.c&#xff0c;运行平台是在macOS上&#xff0c;本文拟介绍下android平台如何用NDK编译链编译ffmepg库并使用。 macOS上使用qt creator编译调试ffmpeg.c macOS上将ffmpeg.c编译成Framework 大体思路&#xff1a; 其…

信息学奥赛初赛天天练-18-挑战程序阅读-最长公共子序列、字符串与数组越界的巧妙应用

PDF文档公众号回复关键字:20240601 1 2023 CSP-J 阅读程序2 阅读程序&#xff08;程序输入不超过数组成字符串定义的范围&#xff1a;判断题正确填√&#xff0c;错误填&#xff1b;除特殊说明外&#xff0c;判断题1.5分&#xff0c;选择题3分&#xff0c;共计40分&#xff…

从创意到成功:创业全过程详解

目录 创业目标市场的选择和分析用户画像的描绘软件产品的核心功能和价值主张竞争对手分析及自身竞争优势目标用户的具体需求调研初步的产品设计思路或框架技术栈的选择基于哪些考量如何规划产品的迭代路线图预计的商业模式 1. 创业目标市场的选择和分析 市场选择的重要性 创…