NameError:名称“ char”未定义错误

时间:2018-07-07 11:36:18

标签: python python-3.x

我正在尝试使用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,我尝试按照答案说的做,但是相反,它给了我一个不同的错误,这就是我现在遇到的错误。 帮助将不胜感激,谢谢

1 个答案:

答案 0 :(得分:1)

您需要执行以下操作:

sys.stdout.write(x)

因为在您的代码中未定义char。您正在将x传递给该函数。