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 相关文章推荐
Tensorflow实现卷积神经网络用于人脸关键点识别
Mar 05 Python
Python中str.join()简单用法示例
Mar 20 Python
解决pycharm 远程调试 上传 helpers 卡住的问题
Jun 27 Python
Django后端接收嵌套Json数据及解析详解
Jul 17 Python
在python中用url_for构造URL的方法
Jul 25 Python
python主线程与子线程的结束顺序实例解析
Dec 17 Python
Python类的绑定方法和非绑定方法实例解析
Mar 04 Python
Python restful框架接口开发实现
Apr 13 Python
Django静态资源部署404问题解决方案
May 11 Python
浅谈Keras的Sequential与PyTorch的Sequential的区别
Jun 17 Python
Python如何把不同类型数据的json序列化
Apr 30 Python
Python用any()函数检查字符串中的字母以及如何使用all()函数
Apr 14 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
多文件上载系统完整版
2006/10/09 PHP
php中函数的形参与实参的问题说明
2010/09/01 PHP
PHP三元运算符的结合性介绍
2012/01/10 PHP
神盾加密解密教程(三)PHP 神盾解密工具
2014/06/08 PHP
学习php中的正则表达式
2014/08/17 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
2016/09/01 PHP
PHP验证终端类型是否为手机的简单实例
2017/02/07 PHP
php时间戳转换代码详解
2019/08/04 PHP
JS Excel读取和写入操作(模板操作)实现代码
2010/04/11 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
2016/10/27 Javascript
bootstrap laydate日期组件使用详解
2017/01/04 Javascript
微信小程序开发经验总结(推荐)
2017/01/11 Javascript
jQuery实现的分页功能示例
2017/01/22 Javascript
Angular2中如何使用ngx-translate进行国际化
2017/05/21 Javascript
详解用node.js实现简单的反向代理
2017/06/26 Javascript
js 获取元素的具体样式信息getcss(实例讲解)
2017/07/05 Javascript
vue项目开发中setTimeout等定时器的管理问题
2018/09/13 Javascript
使用electron将vue-cli项目打包成exe的方法
2018/09/29 Javascript
vue中promise的使用及异步请求数据的方法
2018/11/08 Javascript
js中的reduce()函数讲解
2019/01/18 Javascript
详解Vue中使用Axios拦截器
2019/04/22 Javascript
解决IOS端微信H5页面软键盘弹起后页面下方留白的问题
2019/06/05 Javascript
通过实例讲解JS如何防抖动
2019/06/15 Javascript
进一步探究Python的装饰器的运用
2015/05/05 Python
Python文本处理之按行处理大文件的方法
2018/04/09 Python
对DataFrame数据中的重复行,利用groupby累加合并的方法详解
2019/01/30 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
2019/09/07 Python
Python数据库小程序源代码
2019/09/15 Python
Expedia泰国:预订机票、酒店和旅游包(航班+酒店)
2016/09/27 全球购物
Room Mate Hotels美国:西班牙酒店品牌
2018/04/10 全球购物
PatPat香港:婴童服饰和亲子全家装在线购物
2020/09/27 全球购物
关于祖国的演讲稿
2014/05/04 职场文书
2015年防灾减灾工作总结
2015/07/24 职场文书
小学数学教师研修感悟
2015/11/18 职场文书
django如何自定义manage.py管理命令
2021/04/27 Python
JavaScript parseInt0.0000005打印5原理解析
2022/07/23 Javascript