python小姐姐飘雪动态

使用pygame实现飘雪的功能 😏

import pygame
import random

# 初始化pygame
pygame.init()
# 根据背景图片的大小,设置屏幕长宽
SIZE = (800, 500)

screen = pygame.display.set_mode(SIZE)
pygame.display.set_caption("Snow with beautiful girl")
bg = pygame.image.load('程又乘.jpg')

# 雪花列表
snow_list = []

# 初始化雪花:[x坐标,y坐标,x轴速度,y轴速度]
for i in range(200):
    x = random.randrange(0, SIZE[0])
    y = random.randrange(0, SIZE[1])
    sx = random.randint(-1, 1)
    sy = random.randint(3, 6)
    snow_list.append([x, y, sx, sy])

clock = pygame.time.Clock()

# 主循环
done = False
while not done:
    # 消息事件循环,判断退出
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            done = True

    # 图片背景
    screen.blit(bg, (0, 0))

    # 雪花列表循环
    for i in range(len(snow_list)):
        # 绘制雪花,颜色、位置、大小
        pygame.draw.circle(screen, (255, 255, 255), snow_list[i][:2], snow_list[i][3] -3)

        # 移动雪花位置
        snow_list[i][0] += snow_list[i][2]
        snow_list[i][1] += snow_list[i][3]

        # 如果雪花落出屏幕,重设位置
        if snow_list[i][1] > SIZE[1]:
            snow_list[i][1] = random.randrange(-50, -10)
            snow_list[i][0] = random.randrange(0, SIZE[0])

    # 刷新屏幕
    pygame.display.flip()
    clock.tick(20)

# 退出
pygame.quit()




展示效果:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值