python写流星雨代码
时间: 2024-10-21 22:01:44 浏览: 81
在Python中编写一个简单的流星雨动画,可以使用`pygame`库结合随机模块来实现。下面是一个基础的示例,这个例子会在屏幕上绘制出随机移动的小点,模拟流星雨的效果:
```python
import pygame
import sys
import random
# 初始化Pygame
pygame.init()
# 设置窗口大小
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))
# 创建一颗流星的基本结构
class Meteor(pygame.sprite.Sprite):
def __init__(self):
super().__init__()
self.image = pygame.Surface([5, 1]) # 这里假设流星是单行的一像素宽
self.image.fill((255, 255, 255)) # 白色
self.rect = self.image.get_rect()
self.speed = random.uniform(-5, 5) # 随机速度
def update(self):
self.rect.y += self.speed
if self.rect.top > screen_height: # 当流星超出屏幕底部时删除它
self.kill()
# 游戏主循环
meteor_list = pygame.sprite.Group() # 存放所有流星
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 创建新的流星并添加到列表中
for _ in range(random.randint(1, 5)): # 每次生成1到5颗流星
meteor = Meteor()
meteor.rect.x = random.randint(0, screen_width)
meteor_list.add(meteor)
# 更新流星位置
meteor_list.update()
# 绘制屏幕
screen.fill((0, 0, 0))
meteor_list.draw(screen)
pygame.display.flip()
# 结束游戏
pygame.quit()
sys.exit()
阅读全文