python跨年元旦烟花代码
时间: 2024-12-30 15:31:47 浏览: 32
### Python代码实现新年烟花动画
为了创建一个模拟新年的烟花效果,可以使用`pygame`库来处理图形和动画。下面是一段完整的Python代码示例,用于生成动态的烟花爆炸视觉效果:
```python
import pygame
import random
import math
# 初始化Pygame模块
pygame.init()
# 设置屏幕尺寸
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))
# 定义颜色
black = (0, 0, 0)
white = (255, 255, 255)
class Firework:
def __init__(self):
self.x = random.randint(0, screen_width)
self.y = screen_height
self.color = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
self.speed = random.uniform(5, 10)
self.angle = random.uniform(-math.pi / 4, math.pi / 4)
def update(self):
self.y -= self.speed * math.sin(self.angle)
if self.y < -50:
firework_list.remove(self)
def draw_fireworks():
for fw in firework_list:
pygame.draw.circle(screen, fw.color, (int(fw.x), int(fw.y)), 5)
firework_list = []
running = True
clock = pygame.time.Clock()
while running:
clock.tick(30)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 随机添加新的烟花
if random.random() < 0.1:
firework_list.append(Firework())
screen.fill(black)
draw_fireworks()
for f in firework_list[:]:
f.update()
pygame.display.flip()
pygame.quit()
```
这段程序通过定义`Firework`类来表示单个烟花对象,并且在一个列表中管理多个这样的实例。每次循环迭代都会更新它们的位置并绘制出来,从而形成连续运动的效果[^1]。
阅读全文