“”"
功能:代码雨效果
作者:指尖魔法师

“”"
import pygame
import random

def main():
# 初始化pygame
pygame.init()

# 默认不全屏
fullscreen = False
# 窗口未全屏宽和高
WIDTH, HEIGHT = 1100, 600init_width, init_height = WIDTH, HEIGHT# 字块大小,宽,高
suface_height = 18
# 字体大小
font_size = 20# 创建一个窗口
screen = pygame.display.set_mode((init_width, init_height))# 字体
font = pygame.font.Font(r'C:\Windows\Boot\Fonts\msyh_boot.ttf', font_size)#此处修改你电脑上的字体文件,# 创建一个图像对象
bg_suface = pygame.Surface((init_width, init_height), flags=pygame.SRCALPHA)
pygame.Surface.convert(bg_suface)
bg_suface.fill(pygame.Color(0, 0, 0, 28))# 用纯色填充背景
screen.fill((0, 0, 0))# 显示的字符
letter = ['q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '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)
]# 也可以替换成0 1 显示
# texts = [
#     font.render('0',True,(0,255,0)),font.render('1',True,(0,255,0))
# ]# 生成的列数
column = int(init_width / suface_height)
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:# 按F11切换全屏,或窗口if event.key == pygame.K_F11:print("检测到按键F11")fullscreen = not fullscreenif fullscreen:# 全屏效果,参数重设size = init_width, init_height = pygame.display.list_modes()[0]screen = pygame.display.set_mode(size, pygame.FULLSCREEN | pygame.HWSURFACE)else:init_width, init_height = WIDTH, HEIGHTscreen = pygame.display.set_mode((WIDTH, HEIGHT))# 图像对象重新创建bg_suface = pygame.Surface((init_width, init_height), flags=pygame.SRCALPHA)pygame.Surface.convert(bg_suface)bg_suface.fill(pygame.Color(0, 0, 0, 28))column = int(init_width / suface_height)drops = [0 for i in range(column)]elif event.key == pygame.K_ESCAPE:# 按ESC退出exit()# 延时pygame.time.delay(30)# 图像对象放到窗口的原点坐标上screen.blit(bg_suface, (0, 0))for i in range(len(drops)):# 随机字符text = random.choice(texts)# 把字符画到该列的下雨的位置screen.blit(text, (i * suface_height, drops[i]*suface_height))# 更新下雨的坐标drops[i] += 1# 超过界面高度或随机数,下雨位置置0if drops[i] * suface_height > init_height or random.random() > 0.95:drops[i] = 0# 更新画面pygame.display.flip()

if name ==‘main’:
main()

python 实现代码雨(转载)相关推荐

  1. python画代码雨

    python实现屏幕代码雨 通过Python实现屏幕代码雨 python 版本 看不出来是2.x还是3.x的建议百度 根据情况调节屏幕大小 否则屏幕显示不下会报错 PANEL_width = 1000 ...

  2. 有点无聊,来用Python制作代码雨

    前言 刚刚有人找我要流星雨的代码 可惜了,我没有这个,所以我就来搞个代码雨吧 效果展示 应该很多人都看过这个的 也是无聊就拿出来发发 实现代码 模块准备 源码.点击领取即可 import random ...

  3. python黑客帝国代码雨特效

    效果: 代码: try: import pygame import sys from pygame.locals import * from random import randint except: ...

  4. Python黑客帝国代码雨

    文章目录 准备 代码 准备 需要安装pygame 安装代码: pip install pygame 代码 代码如下: import random import pygame #我的电脑分辨率是这个数值 ...

  5. python编写代码雨_花瓣雨飞舞的春天turtle版源代码

    python flower rain花瓣雨飞舞的春天turtle版需要寻找"浪漫"吗?这里已经有了,音乐也为你配好了.你们相遇的日子,是否是在花瓣雨飞舞的春天? music已经响起 ...

  6. 《黑客帝国》中的代码雨让人身临其境!利用Python轻松实现!

    前言 <黑客帝国>的一段代码雨片段让外行人感觉非常震撼,但其实利用咱们的Python来做出这个效果真的很简单! 今天就带大家把这个代码雨放在自己的显示器上面,亲身体验一把黑客的感觉! 环境 ...

  7. 《黑客帝国》中的代码雨让人身临其境 利用Python轻松实现

    前言 <黑客帝国>的一段代码雨片段让外行人感觉非常震撼,但其实利用咱们的Python来做出这个效果真的很简单! 今天就带大家把这个代码雨放在自己的显示器上面,亲身体验一把黑客的感觉! 环境 ...

  8. 【Python X 数字雨】代码实现(改)

    [Python X 数字雨] はじめました!どぞよろしくおねいします!首先呢,从别人那里嫖到源代码,做了些小小的改动.也就是说:以下非原创.特此说明.话不多说,先放代码: #coding = UTF- ...

  9. html实现01代码雨(转载)(附带运行方法)

    html实现代码雨 一.代码 二.效果图 三.运行方法 一.代码 这是一个用html做的代码雨小程序,注:不需要额外的编译器,用记事本就可以运行,附带运行方法. <!DOCTYPE html&g ...

  10. python爬虫代码-python网络爬虫源代码(可直接抓取图片)

    在开始制作爬虫前,我们应该做好前期准备工作,找到要爬的网站,然后查看它的源代码我们这次爬豆瓣美女网站,网址为:用到的工具:pycharm,这是它的图标 ...博文来自:zhang740000的博客 P ...

最新文章

  1. 最完整代码的用php备份mysql数据库
  2. Jdom makes xml easy
  3. 一篇比较深刻的讲FP特性的文章
  4. 可以由指令直接指定的I/O端口数(一共256个,从0到255一共256个端口号)
  5. Python对函数求偏导数
  6. VSCode打造成为开发神器-插件篇
  7. SP5971 LCMSUM - LCM Sum
  8. selenium架构_Selenium测试的干净架构
  9. 前端状态机系列:SCXML与XState对应关系
  10. (十三)java多线程之Timer
  11. 将json字符串转换成html,根据json字符串生成Html的一种方式
  12. excel工作表保护如何无密码撤销
  13. java post 提交数据_java中使用post提交数据
  14. python绘制象棋棋盘图片_如何用Python画一个中国象棋棋盘?
  15. OpenCV Eigen Sophus PCL G2O
  16. XML中DTD,XSD的区别与应用
  17. 脑波和眼动连通性分析 python-(1)
  18. 如何为Apache JMeter开发插件(三)——冲破图片验证码的束缚
  19. vue3使用Pinia进行全局状态管理,Pinia安装和使用,Pinia 和 Vuex的对比
  20. 什么是芯片?芯片内部制造工艺了解吗?

热门文章

  1. Ubuntu下的QQ-For-Linux 安装
  2. Arcgis API For Javascript下载与安装
  3. Node.js下载及安装步骤
  4. 把swf反编译成fla的几种方法
  5. ipad文献管理软件_【MAC上写论文有哪些好的文献管理软件可以推荐?】-看准网
  6. 计算机软件怎么共享使用,局域网共享软件,教您局域网共享软件如何使用
  7. 基于R语言的贝叶斯网络模型的实践技术
  8. python 身份证验证系统_用Python写一个身份证号码校验系统
  9. TP5开源微信小程序商城源码+附安装文档
  10. 好书推荐《父与子的编程之旅:与小卡特一起学Python》