python實(shí)現(xiàn)字母閃爍效果的示例代碼
效果圖
1. 介紹
屏幕上隨機(jī)閃爍的代碼塊,一定能滿足我們對(duì)于電影中黑客的一絲絲設(shè)想,這次,讓我們用簡(jiǎn)簡(jiǎn)單單的30行python代碼,實(shí)現(xiàn)這個(gè)效果。
前面我們借助 python 實(shí)現(xiàn)了代碼雨的效果,這一次,我們同樣借助pygame
與random
兩個(gè)包,實(shí)現(xiàn)代碼閃爍的效果。
此次我們只是用pygame
與random
兩個(gè)包,首先,將他們導(dǎo)入:
import pygame import random
之后,我們進(jìn)行pygame界面的初始化工作:
# 參數(shù) SCREENSIZE=(600,600) BLACK=(0,0,0,13) # 初始化 pygame.init() font = pygame.font.SysFont('宋體', 20) screen = pygame.display.set_mode(SCREENSIZE) surface = pygame.Surface(SCREENSIZE, flags=pygame.SRCALPHA) pygame.Surface.convert(surface) surface.fill(BLACK) screen.fill(BLACK)
之后設(shè)置一下我們字體的相關(guān)內(nèi)容:
# 內(nèi)容 lib=[chr(i) for i in range(48,48+10)] + [chr(i) for i in range(97,97+26)] # [0-9 a-z] texts = [font.render(l, True, (0, 255, 0)) for l in lib] cols = list(range(40)) # 字體15, 窗口600
最后在一個(gè)循環(huán)中,更新界面并實(shí)現(xiàn)閃爍的代碼打印效果:
while True: for event in pygame.event.get(): if event.type == pygame.QUIT: exit() pygame.time.delay(33) screen.blit(surface, (0, 0)) for i in range(n:=len(cols)): text = random.choice(texts) # 代碼閃爍 x,y=random.randint(0,n-1),random.randint(0,n-1) screen.blit(text,(x*15,cols[y]*15)) pygame.display.flip()
2. 完整代碼
完整代碼如下:
import pygame import random # 參數(shù) SCREENSIZE=(600,600) BLACK=(0,0,0,13) # 初始化 pygame.init() font = pygame.font.SysFont('宋體', 20) screen = pygame.display.set_mode(SCREENSIZE) surface = pygame.Surface(SCREENSIZE, flags=pygame.SRCALPHA) pygame.Surface.convert(surface) surface.fill(BLACK) screen.fill(BLACK) # 內(nèi)容 lib=[chr(i) for i in range(48,48+10)] + [chr(i) for i in range(97,97+26)] # [0-9 a-z] texts = [font.render(l, True, (0, 255, 0)) for l in lib] cols = list(range(40)) # 字體15, 窗口600 while True: for event in pygame.event.get(): if event.type == pygame.QUIT: exit() pygame.time.delay(33) screen.blit(surface, (0, 0)) for i in range(n:=len(cols)): text = random.choice(texts) # 隨機(jī)閃爍 x,y=random.randint(0,n-1),random.randint(0,n-1) screen.blit(text,(x*15,cols[y]*15)) pygame.display.flip()
到此這篇關(guān)于python實(shí)現(xiàn)字母閃爍效果的示例代碼的文章就介紹到這了,更多相關(guān)python 字母閃爍內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PyCharm活動(dòng)模板設(shè)置步驟實(shí)現(xiàn)
很多情況,我們?cè)趯?xiě)代碼都會(huì)存在經(jīng)常要寫(xiě)一些簡(jiǎn)單且又重復(fù)的代碼,Pycharm中的活動(dòng)模板可以把這些使用頻率很高的一些代碼打包起來(lái)設(shè)置一個(gè)快捷鍵,本文就來(lái)介紹一下如何實(shí)現(xiàn)2023-12-12python對(duì)配置文件.ini進(jìn)行增刪改查操作的方法示例
.ini配置文件常被用作存儲(chǔ)程序中的一些參數(shù),通過(guò)它程序可以變得更加靈活。下面這篇文章主要給大家介紹了關(guān)于python對(duì)配置文件.ini進(jìn)行增刪改查操作的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-07-07python中文分詞+詞頻統(tǒng)計(jì)的實(shí)現(xiàn)步驟
詞頻統(tǒng)計(jì)就是輸入一段句子或者一篇文章,然后統(tǒng)計(jì)句子中每個(gè)單詞出現(xiàn)的次數(shù),下面這篇文章主要給大家介紹了關(guān)于python中文分詞+詞頻統(tǒng)計(jì)的相關(guān)資料,需要的朋友可以參考下2022-06-06python 最簡(jiǎn)單的實(shí)現(xiàn)適配器設(shè)計(jì)模式的示例
這篇文章主要介紹了python 最簡(jiǎn)單的實(shí)現(xiàn)適配器設(shè)計(jì)模式的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06Python標(biāo)準(zhǔn)庫(kù)與第三方庫(kù)詳解
這篇文章主要介紹了Python標(biāo)準(zhǔn)庫(kù)與第三方庫(kù),需要的朋友可以參考下2014-07-07python通用數(shù)據(jù)庫(kù)操作工具 pydbclib的使用簡(jiǎn)介
這篇文章主要介紹了python通用數(shù)據(jù)庫(kù)操作工具 pydbclib的使用簡(jiǎn)介,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12