日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

python?實(shí)現(xiàn)打印掃描效果詳情_python

作者:樹獺叔叔??????? ? 更新時(shí)間: 2022-09-27 編程語言

1. 介紹

前面我們嘗試通過python實(shí)現(xiàn)了代碼雨以及字母隨機(jī)閃爍的效果,這次,我們?cè)賮韺?shí)現(xiàn)一個(gè)代碼的線性掃面。

同樣的,此次我們?nèi)匀皇鞘褂?0行代碼來實(shí)現(xiàn)這個(gè)效果。

此次我們只是用pygamerandom兩個(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)中,更新界面并繪制出代碼雨:

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)
        # 字母掃描
        screen.blit(text, (i * 15, cols[i] * 15))
        cols[i] = (cols[i]+1)%40
    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)
        # 字母掃描
        screen.blit(text, (i * 15, cols[i] * 15))
        cols[i] = (cols[i]+1)%40
    pygame.display.flip()

截止到現(xiàn)在,我們已經(jīng)學(xué)會(huì)了用簡簡單單的30行代碼實(shí)現(xiàn)代碼雨,閃爍代碼以及線性掃描三種炫酷的特效了,相信大家在這個(gè)過程中也對(duì) python 有了一個(gè)最初步的理解與認(rèn)識(shí),

原文鏈接:https://juejin.cn/post/7126947051769692167

欄目分類
最近更新