我正在尝试使用python创建文本游戏,并且现在正在尝试调试游戏。 我认为我正在编写的这段代码应该一一键入字母/字符并产生打字效果。 在这里:
def setup_game():
### BACKSTORY TELLING
backstory = "something something boring backstory"
typeout(backstory)
def typeout(x):
time.sleep(0.03)
sys.stdout.write(char)
sys.stdout.flush()
option = input('> ')
if option.lower() == '> ok':
title_screen()
else:
print("please try again\n")
option = input('> ')
#Actual game
def start_game():
print_location()
main_game_loop()
setup_game()
但是无论我做什么,都会给我一个错误,而且我不知道如何解决。 在这里:
Traceback (most recent call last):
File "textgame.py", line 612, in <module>
setup_game()
File "textgame.py", line 600, in setup_game
typeout(backstory)
File "textgame.py", line 604, in typeout
sys.stdout.write(char)
NameError: name 'char' is not defined
错误中引用的所有行均位于顶部代码中。
我确实找到了有关以下内容的另一篇文章:
time.sleep(0.03)
sys.stdout.write(char)
sys.stdout.flush()
part,我尝试按照答案说的做,但是相反,它给了我一个不同的错误,这就是我现在遇到的错误。 帮助将不胜感激,谢谢
答案 0 :(得分:1)
您需要执行以下操作:
sys.stdout.write(x)
因为在您的代码中未定义char
。您正在将x
传递给该函数。