python实现黑客字幕雨效果


Posted in Python onJune 21, 2018

本文实例为大家分享了python实现字幕雨效果的具体代码,供大家参考,具体内容如下

#################################### 
#name : HACKER EMPIRE CAPTION RAIN 
#import modules 
try : 
  import pygame 
  import sys 
  from pygame.locals import * 
  from random import randint 
except : 
  print("Load modules error!!") 
  exit() 
 
 
#define some datas 
SCREEN_WIDTH = 1366 
SCREEN_HEIGHT = 768 
LOW_SPEED = 30 
HIGH_SPEED = 30 
LOW_SIZE = 5 
HIGH_SIZE = 30 
FONT_SIZE = 40 
FONT_NAME = "myfont.ttf" 
FREQUENCE = 50 
times = 0 
 
 
#def random color 
def randomcolor() : 
  return (randint(0,255),randint(0,255),randint(0,255)) 
 
 
def randomspeed() : 
  return randint(LOW_SPEED,HIGH_SPEED) 
 
 
def randomposition() : 
  return (randint(0,SCREEN_WIDTH),randint(0,SCREEN_HEIGHT)) 
 
 
def randomsize() : 
  return randint(LOW_SIZE,HIGH_SIZE) 
 
 
def randomoname() : 
  return randint(0,100000) 
 
 
def randomvalue() : 
  return randint(0,9)#this is your own display number range 
 
 
#class of sprite 
class Word(pygame.sprite.Sprite) : 
  def __init__(self,bornposition) : 
    pygame.sprite.Sprite.__init__(self) 
    self.value = randomvalue() 
    self.font = pygame.font.Font(FONT_NAME,FONT_SIZE) 
    self.image = self.font.render(str(self.value),True,randomcolor()) 
    self.speed = randomspeed() 
    self.rect = self.image.get_rect() 
    self.rect.topleft = bornposition 
  def update(self) : 
    self.rect = self.rect.move(0,self.speed) 
    if self.rect.top > SCREEN_HEIGHT : 
      self.kill() 
#init the available modules 
pygame.init() 
screen = pygame.display.set_mode((SCREEN_WIDTH,SCREEN_HEIGHT)) 
pygame.display.set_caption("HACKER EMPIRE CAPTION RAIN") 
clock = pygame.time.Clock() 
group = pygame.sprite.Group() 
group_count = SCREEN_WIDTH / FONT_SIZE 
 
 
#mainloop 
while True : 
  time = clock.tick(FREQUENCE) 
  for event in pygame.event.get() : 
    if event.type == QUIT : 
      pygame.quit() 
      exit() 
  screen.fill((0,0,0)) 
  for i in range(0,group_count) : 
    group.add(Word((i * FONT_SIZE,-FONT_SIZE))) 
  group.update() 
  group.draw(screen) 
 
  pygame.display.update() 
 
  #save pictures 
  #times += time 
  #if times > 5000 : 
    #pygame.image.save(screen,str(randomoname())+".png") 
 
 
###########################

效果图:

python实现黑客字幕雨效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现针对给定单链表删除指定节点的方法
Apr 12 Python
Python实现的求解最小公倍数算法示例
May 03 Python
python指定写入文件时的编码格式方法
Jun 07 Python
win7下python3.6安装配置方法图文教程
Jul 31 Python
python实现QQ邮箱/163邮箱的邮件发送
Jan 22 Python
python 使用plt画图,去除图片四周的白边方法
Jul 09 Python
pytorch自定义二值化网络层方式
Jan 07 Python
Python如何将装饰器定义为类
Jul 30 Python
python 三种方法实现对Excel表格的读写
Nov 19 Python
Python hashlib和hmac模块使用方法解析
Dec 08 Python
解决PyCharm无法使用lxml库的问题(图解)
Dec 22 Python
教你使用TensorFlow2识别验证码
Jun 11 Python
python实现内存监控系统
Mar 07 #Python
Python之csv文件从MySQL数据库导入导出的方法
Jun 21 #Python
python 从csv读数据到mysql的实例
Jun 21 #Python
OPENCV去除小连通区域,去除孔洞的实例讲解
Jun 21 #Python
python读取文本绘制动态速度曲线
Jun 21 #Python
python实现可视化动态CPU性能监控
Jun 21 #Python
python实时监控cpu小工具
Jun 21 #Python
You might like
php实现评论回复删除功能
2017/05/23 PHP
PHP实现的XXTEA加密解密算法示例
2018/08/28 PHP
jquery 1.4.2发布!主要是性能与API
2010/02/25 Javascript
javascript工具库代码
2012/03/29 Javascript
js隐藏与显示回到顶部按钮及window.onscroll事件应用
2013/01/25 Javascript
JavaScript动态创建div属性和样式示例代码
2013/10/09 Javascript
javascript中数组中求最大值示例代码
2013/12/18 Javascript
Js实现动态添加删除Table行示例
2014/04/14 Javascript
关于javaScript注册click事件传递参数的不成功问题
2014/07/18 Javascript
javascript实现跨域的方法汇总
2015/06/25 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
Node.js的Mongodb使用实例
2016/12/30 Javascript
React-Native 组件之 Modal的使用详解
2017/08/08 Javascript
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
关于vue面试题汇总
2018/03/20 Javascript
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
Vue-component全局注册实例
2018/09/06 Javascript
node学习笔记之读写文件与开启第一个web服务器操作示例
2019/05/29 Javascript
jQuery实现带进度条的轮播图
2020/09/13 jQuery
详解ES6中class的实现原理
2020/10/03 Javascript
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
在Python中处理列表之reverse()方法的使用教程
2015/05/21 Python
Python numpy生成矩阵、串联矩阵代码分享
2017/12/04 Python
Python实现去除列表中重复元素的方法小结【4种方法】
2018/04/27 Python
在IPython中进行Python程序执行时间的测量方法
2018/11/01 Python
python爬虫豆瓣网的模拟登录实现
2019/08/21 Python
在Python中等距取出一个数组其中n个数的实现方式
2019/11/27 Python
详解css3 Transition属性(平滑过渡菜单栏案例)
2017/09/05 HTML / CSS
SQL语言面试题
2013/08/27 面试题
恒华伟业笔试面试题
2015/02/26 面试题
人事专员的岗位职责
2014/03/01 职场文书
节能环保口号
2014/06/12 职场文书
学习保证书
2015/01/17 职场文书
SQL SERVER触发器详解
2022/02/24 SQL Server
面试分析分布式架构Redis热点key大Value解决方案
2022/03/13 Redis
MySQL磁盘碎片整理实例演示
2022/04/03 MySQL