Python跳动的爱心(双爱心版)

ops/2024/9/25 15:26:27/

目录

系列文章

前言

Turtle简介

Python跳动的爱心

尾声


系列文章

序号文章目录直达链接
表白系列
1无法拒绝的表白界面https://want595.blog.csdn.net/article/details/134744894
2满屏飘字表白代码https://want595.blog.csdn.net/article/details/135037388
3无限弹窗表白代码https://want595.blog.csdn.net/article/details/134744711
4李峋同款可写字版跳动的爱心https://want595.blog.csdn.net/article/details/134744191
5流星雨https://want595.blog.csdn.net/article/details/134747408
6漂浮爱心https://want595.blog.csdn.net/article/details/134744929
7爱心光波https://want595.blog.csdn.net/article/details/134747365
8玫瑰花https://want595.blog.csdn.net/article/details/134747447
节日系列
1新春/跨年烟花秀(2022)https://want595.blog.csdn.net/article/details/128727394
烟花秀(2023)https://want595.blog.csdn.net/article/details/135042880
粒子烟花https://want595.blog.csdn.net/article/details/136029420
2圣诞节圣诞礼物https://want595.blog.csdn.net/article/details/135336583
圣诞树(2022)https://want595.blog.csdn.net/article/details/128428985
绿色圣诞树(2023)https://want595.blog.csdn.net/article/details/135048607
粉色圣诞树(2023)https://want595.blog.csdn.net/article/details/135043042
3冬至大雪纷飞https://want595.blog.csdn.net/article/details/128806017
4生日生日蛋糕https://want595.blog.csdn.net/article/details/128739755
5儿童节五彩气球https://want595.blog.csdn.net/article/details/128741043
6国庆节国庆祝福https://want595.blog.csdn.net/article/details/128740923
7万圣节万圣礼物https://want595.blog.csdn.net/article/details/128734395
8愚人节愚人代码https://want595.blog.csdn.net/article/details/128696990
9中秋节浪漫星空https://want595.blog.csdn.net/article/details/128737284
10植树节樱花树https://want595.blog.csdn.net/article/details/128700178
动漫系列
1名侦探柯南系列柯南https://want595.blog.csdn.net/article/details/134777613
2喜羊羊与灰太狼系列喜羊羊https://want595.blog.csdn.net/article/details/134778583
懒羊羊https://want595.blog.csdn.net/article/details/134847642
灰太狼https://want595.blog.csdn.net/article/details/135335303
小灰灰https://want595.blog.csdn.net/article/details/135335445
小香香https://want595.blog.csdn.net/article/details/135056783
3海绵宝宝系列海绵宝宝https://want595.blog.csdn.net/article/details/134847364
4哆啦A梦系列哆啦A梦https://want595.blog.csdn.net/article/details/135037884
5HelloKitty系列hellokittyhttps://want595.blog.csdn.net/article/details/135337732
6Tom&Jerry系列Tom&Jerryhttps://want595.blog.csdn.net/article/details/135337775
7草莓熊系列草莓熊https://want595.blog.csdn.net/article/details/135337832
8皮卡丘系列迷你皮卡丘https://want595.blog.csdn.net/article/details/135337911
高级皮卡丘https://want595.blog.csdn.net/article/details/135337937
豪华皮卡丘https://want595.blog.csdn.net/article/details/135337947
9猪猪侠系列猪猪侠https://want595.blog.csdn.net/article/details/136340111
10超级英雄系列蜘蛛侠https://want595.blog.csdn.net/article/details/129080659
炫酷系列
1  一闪一闪亮星星系列张万森下雪了https://want595.blog.csdn.net/article/details/135336915
一闪一闪亮星星https://want595.blog.csdn.net/article/details/135337049
2代码雨https://want595.blog.csdn.net/article/details/135054341
3七彩花朵https://want595.blog.csdn.net/article/details/135056670
43D星空https://want595.blog.csdn.net/article/details/135056516
5金榜题名https://want595.blog.csdn.net/article/details/135056150
6满天星https://want595.blog.csdn.net/article/details/135056305
……

前言

今天博主给大家带来了有趣的跳动的爱心(双心版),一起来看看吧!

Turtle简介

Turtle 是 Python 标准库中的一个模块,用于绘制简单的图形和创建基本的图形用户界面。它借用了 Logo 编程语言中的概念,通过控制一个“海龟”在屏幕上的移动来绘制图形。这个模块非常适合初学者学习编程,因为它提供了一个直观且有趣的方式来理解基本的编程概念,如循环、函数和事件处理。

Turtle 的基本概念

Turtle 模块中的“海龟”其实是一个小箭头,它可以在屏幕上移动,并根据指令绘制路径。以下是一些基本的命令:

  •  `forward(distance)`:让海龟向前移动指定距离。
  •  `backward(distance)`:让海龟向后移动指定距离。
  •  `right(angle)`:让海龟向右转动指定角度。
  •  `left(angle)`:让海龟向左转动指定角度。
  •  `penup()` 和 `pendown()`:抬起或放下笔,抬起笔时移动不会绘制线条。

简单示例

以下是一个使用 Turtle 模块绘制正方形的简单示例:

python">import turtle
# 创建一个屏幕对象
wn = turtle.Screen()
wn.title("Turtle 示例")
# 创建一个海龟对象
t = turtle.Turtle()
# 绘制正方形
for _ in range(4):t.forward(100)t.right(90)
# 完成绘图
wn.mainloop()

这个示例代码展示了如何创建一个窗口和一个海龟对象,然后使用循环指令绘制一个正方形。`wn.mainloop()` 用于保持窗口打开状态,以便查看绘制结果。

高级功能

除了基本的移动和绘图命令,Turtle 模块还支持更高级的功能,如:

  •  **颜色和填充**:使用 `color()` 设置绘图颜色,使用 `begin_fill()` 和 `end_fill()` 创建填充图形。
  • **形状**:海龟的形状可以更改为箭头、圆形、正方形等,使用 `shape()` 方法。
  • **速度**:通过 `speed()` 方法控制海龟的移动速度。
  • **事件处理**:Turtle 支持事件处理,如键盘和鼠标事件,可以使用 `onscreenclick()` 和 `onkey()` 方法进行绑定。 

应用场景

Turtle 模块广泛应用于教育领域,尤其是编程入门和算法教学。它通过图形化的方式帮助学生理解抽象的编程概念,同时增加了学习的趣味性。此外,Turtle 也可以用于简单的图形设计和数据可视化,尽管功能较为基础,但它为进一步学习更复杂的图形编程打下了良好的基础。

总的来说,Turtle 模块是 Python 学习者不可多得的工具,它不仅易于上手,而且功能丰富,能够激发学习者的创造力和编程兴趣。通过不断尝试和练习,学习者可以掌握编程的基本技能,并为深入学习打下坚实的基础。

Python跳动的爱心

程序设计

python">import random
from math import sin, cos, pi, log
from tkinter import *# Constants
IMAGE_ENLARGE = 11
INNER_HEART_COLOR = "pink"
OUTER_HEART_COLOR = ""
SCATTER_BETA = 0.15
SHRINK_RATIO = 15
CURVE_RATIO = 10
FRAME_DELAY = 160
NUM_POINTS = 2000
NUM_HALO_POINTS = 3000
NUM_EDGE_DIFFUSION_POINTS = 3
HALO_RANDOM_FACTOR = 14class HeartParameters:def __init__(self):self.points = set()self.edge_diffusion_points = set()self.center_diffusion_points = set()self.all_points = {}# Heart Function
def heart_function(t, shrink_ratio=IMAGE_ENLARGE):x = 16 * (sin(t) ** 3)y = -(13 * cos(t) - 5 * cos(2 * t) - 2 * cos(3 * t) - cos(4 * t))x, y = x * shrink_ratio + CANVAS_CENTER_X, y * shrink_ratio + CANVAS_CENTER_Yreturn int(x), int(y)# Scatter Points
def scatter_points(x, y, beta=SCATTER_BETA):ratio_x, ratio_y = -beta * log(random.random()), -beta * log(random.random())dx, dy = ratio_x * (x - CANVAS_CENTER_X), ratio_y * (y - CANVAS_CENTER_Y)return x - dx, y - dy# Shrink Points
def shrink_points(x, y, ratio):force = -1 / (((x - CANVAS_CENTER_X) ** 2 + (y - CANVAS_CENTER_Y) ** 2) ** 0.6)dx, dy = ratio * force * (x - CANVAS_CENTER_X), ratio * force * (y - CANVAS_CENTER_Y)return x - dx, y - dy# Curve Function
def curve(p):return 2 * (3 * sin(4 * p)) / (2 * pi)
……

运行效果

  

尾声

我是一只有趣的兔子,感谢你的喜欢!


http://www.ppmy.cn/ops/48856.html

相关文章

基于栅格占据概率和距离场的机器人覆盖轨迹模拟

基于栅格占据概率和距离场的机器人覆盖轨迹模拟 简介 辐射场模型实现 理论基础 指数函数建模 我们使用指数函数来表示机器人在某个栅格上停留时间对覆盖概率的影响: p ( t ) 1 − e − λ t p(t) 1 - e^{-\lambda t} p(t)1−e−λt 其中 λ \lambda λ 是控制增长速率…

移动硬盘打不开怎么办?原因解析!

移动硬盘是一种方便携带、快速传输大量数据的存储设备。但有时我们会遇到这样的问题:插上电脑后,移动硬盘无法打开,出现各种错误提示。这时候我们该怎么办呢? 以下是一些可能导致移动硬盘打不开的原因及解决方法: 1.硬…

前端HTML相关知识

1.什么是HTML HTML 指的是超文本标记语言 ( HyperText Markup Language )。 超文本:是指页面内可以包含图片、链接、声音,视频等内容 标记:标签(通过标记符号来告诉浏览器网页内容该如何显示) 浏览器根据不同的HTML标签,解析成我们看到的网页 2.HTML的特点 HTML不…

Java中的静态方法(static method)的特点是什么?

Java中的静态方法(static method)具有以下几个显著特点: 1.不需要实例化对象:静态方法可以直接通过类名调用,而不需要创建类的实例。这意味着静态方法属于类本身,而不是类的实例。 2.生命周期最长&#x…

【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox

博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Qt窗口 | 标准对话框 | 消息对话框QMessageBox 文章编号:Q…

Elasticsearch 认证模拟题 - 20

一、题目 定义一个 pipeline,并且将 earthquakes 索引的文档进行更新 pipeline 的 ID 为 earthquakes_pipeline将 magnitude_type 的字段值改为大写如果文档不包含 batch_number,增加这个字段,将数值设置为 1如果已经包含 batch_number&…

【深度学习】基于EANet模型的图像识别和分类技术

1.引言 1.1.EANet模型简介 EANet(External Attention Transformer)是一种深度学习模型,它结合了Transformer架构和外部注意力机制,特别适用于图像分类等计算机视觉任务。以下是关于EANet的详细解释: 1.1.1 定义与背…

重新安装 Windows 10 后如何恢复丢失的数据?

“嗨,我的 Windows 10 崩溃了,所以我不得不重新安装它。我使用 USB 可启动驱动器重新安装了操作系统。但是,重新安装后,C 盘上的所有先前文件都丢失了。有什么方法可以恢复丢失的文件吗?” - Jacky 在大多数情况下&am…