赞
踩
欢迎来到英杰社区https://bbs.csdn.net/topics/617804998
1 | 新年烟花代码 | https://blog.csdn.net/m0_73367097/article/details/135481779 |
2 | 爱心代码 | https://blog.csdn.net/m0_73367097/article/details/136017032 |
代码首先导入了需要使用的模块:requests、lxml和csv。
- import requests
- from lxml import etree
- import csv
如果出现模块报错
进入控制台输入:建议使用国内镜像源
pip install 模块名称 -i https://mirrors.aliyun.com/pypi/simple
我大致罗列了以下几种国内镜像源:
- 清华大学
- https://pypi.tuna.tsinghua.edu.cn/simple
-
- 阿里云
- https://mirrors.aliyun.com/pypi/simple/
-
- 豆瓣
- https://pypi.douban.com/simple/
-
- 百度云
- https://mirror.baidu.com/pypi/simple/
-
- 中科大
- https://pypi.mirrors.ustc.edu.cn/simple/
-
- 华为云
- https://mirrors.huaweicloud.com/repository/pypi/simple/
-
- 腾讯云
- https://mirrors.cloud.tencent.com/pypi/simple/
- import random
- import pygame
- PANEL_width = 1080
- PANEL_hight = 500
- FONT_PX = 15
- pygame.init()
- winSur = pygame.display.set_mode((PANEL_width, PANEL_hight))
font = pygame.font.SysFont("123.ttf", 25)
请注意,这里使用的字体名称是"123.ttf",你需要将其替换为你自己的字体文件路径或字体名称。
- bg_suface = pygame.Surface((PANEL_width, PANEL_hight), flags=pygame.SRCALPHA)
- pygame.Surface.convert(bg_suface)
- bg_suface.fill(pygame.Color(0, 0, 0, 28))
winSur.fill((0, 0, 0))
- letter = ['y', 'a', 'n', 'y', 'i', 'n', 'g', 'j', 'i', 'e', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'z', 'x', 'c',
- 'v', 'b', 'n', 'm']
- texts = [
- font.render(str(letter[i]), True, (0, 255, 0)) for i in range(26)
- ]
column = int(PANEL_width / FONT_PX)
drops = [0 for i in range(column)]
- while True:
- for event in pygame.event.get():
- if event.type == pygame.QUIT:
- exit()
- elif event.type == pygame.KEYDOWN:
- chang = pygame.key.get_pressed()
- if (chang[32]):
- exit()
-
- pygame.time.delay(30)
- winSur.blit(bg_suface, (0, 0))
-
- for i in range(len(drops)):
- text = random.choice(texts)
- winSur.blit(text, (i * FONT_PX, drops[i] * FONT_PX))
- drops[i] += 1
-
- if drops[i] * 10 > PANEL_hight or random.random() > 0.95:
- drops[i] = 0
-
- pygame.display.flip()
在主循环中,代码首先处理窗口关闭事件和按键事件。然后,通过延时控制字母下落的速度,并将背景表面绘制到窗口上。接下来,遍历每一列字母,随机选择一个字母表面并将其绘制到窗口上,同时更新该列字母的下落距离。如果下落距离超过窗口高度或者随机数大于0.95,则将下落距离重置为0,实现字母连续下落的效果。最后,刷新窗口显示内容。
欢迎来到英杰社区https://bbs.csdn.net/topics/617804998
- import random
- import pygame
- # 定义面板宽度和高度,字体大小
- PANEL_width = 1080
- PANEL_hight = 500
- FONT_PX = 15
- # 初始化pygame模块
- pygame.init()
- # 创建窗口并设置大小
- winSur = pygame.display.set_mode((PANEL_width, PANEL_hight))
- # 定义字体类型和大小
- font = pygame.font.SysFont("123.ttf", 25)
- # 创建背景表面
- bg_suface = pygame.Surface((PANEL_width, PANEL_hight), flags=pygame.SRCALPHA)
- pygame.Surface.convert(bg_suface)
- bg_suface.fill(pygame.Color(0, 0, 0, 28)) # 设置半透明黑色背景
- winSur.fill((0, 0, 0)) # 设置窗口背景颜色为黑色
-
-
在微信搜索公众号:英杰代码编程 或者 扫描下方名片关注后,回复: 代码雨 即可查看:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。