【发布时间】:2019-09-22 19:28:08
【问题描述】:
我正在尝试制作一个小型 RPG 游戏,我想出了以下想法:
这个想法很简单:
1. Class Typing 会像在屏幕上键入一样打印文本。
(函数会更容易写,但问题是一样的)
import sys
import os
import time
class Typing:
def __init__(self, text, speed):
self.text = text
self.speed = speed
for l in text:
sys.stdout.write(l)
sys.stdout.flush()
time.sleep(speed)
sys.stdout.write('\n')
sys.stdout.flush()
text = '''
_____ __ __
/ ___// /_____ ______/ /__
\__ \/ __/ __ `/ ___/ //_/
___/ / /_/ /_/ / /__/ ,<
____ /____/\__/\__,_/\___/_/|_|
/ __ \_ _____ _____/ ____/ ____ _ __
/ / / | | / / _ \/ ___/ /_ / / __ | | /| / /
/ /_/ /| |/ / __/ / / __/ / / /_/ | |/ |/ /
\____/ |___/\___/_/ /_/ /_/\____/|__/|__/
'''
Typing(text, 0.005)
2.按下键盘键'space',for循环将停止,全文将显示在屏幕上。
for l in text:
# Keyboard would listen for the key 'space'
# if 'space' key is detected:
# os.system('clear)
# print(text)
# Keyboard would stop listing for the key 'space'
# break
sys.stdout.write(l)
sys.stdout.flush()
time.sleep(speed)
sys.stdout.write('\n')
sys.stdout.flush()
我的问题:
这在 Python 中是否可行?如果有,怎么做?
【问题讨论】:
标签: python-3.x for-loop printing keyboard pynput