使用Python来下一场雪

具体效果:(大雪缓缓下落)

完整代码:

复制代码
import pygame
import random

# 初始化 Pygame
pygame.init()

# 设置窗口
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("下雪动画")

# 定义雪花类
class Snowflake:
    def __init__(self):
        self.x = random.randint(0, width)
        self.y = random.randint(0, height)
        self.size = random.randint(2, 5)
        self.speed = random.uniform(1, 3)

    def fall(self):
        self.y += self.speed
        if self.y > height:
            self.y = 0
            self.x = random.randint(0, width)

    def draw(self):
        pygame.draw.circle(screen, (255, 255, 255), (self.x, self.y), self.size)

# 创建雪花列表
snowflakes = [Snowflake() for _ in range(100)]

# 主循环
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill((0, 0, 0))  # 填充背景
    for snowflake in snowflakes:
        snowflake.fall()
        snowflake.draw()

    pygame.display.flip()
    pygame.time.delay(30)

pygame.quit()
相关推荐
敲上瘾几秒前
LangChain 入门:大模型不会的,让 Tool 来做
python·langchain·aigc·tool
csbysj20201 分钟前
C# 命名空间(Namespace)
开发语言
深蓝海拓2 分钟前
Qt的HSL色彩系统
笔记·python·qt·学习
gmaajt2 分钟前
html怎么转astro island模式_Astro Islands如何隔离HTML组件
jvm·数据库·python
四维迁跃2 分钟前
CSS如何使用Less的Merge功能合并多个属性值_通过逗号或空格组织css参数
jvm·数据库·python
m0_741481782 分钟前
C#怎么实现全文搜索 C#如何集成Elasticsearch或Lucene.Net实现全文检索功能【数据库】
jvm·数据库·python
蓝博AI4 分钟前
基于深度学习的蔬菜识别系统,resnet50,vgg16,resnet34【pytorch框架,python代码】
人工智能·pytorch·python·深度学习·机器学习·cnn
u0109147604 分钟前
如何通过后端 API 同时向两个 Webhook 发送表单数据
jvm·数据库·python
永远睡不够的入4 分钟前
C++11新特性(3):lambda不是玄学:从编译器生成的仿函数类彻底搞懂 C++ 匿名函数
开发语言·c++
SilentSamsara4 分钟前
综合实战:用 Python 做一个待办事项管理器(CLI 版)
开发语言·python·青少年编程·pycharm