Chapter 7 用户输入input( )报错NameErro

2018-07-20  本文已影响0人  喵斯特

《Python编程:从入门到实践》,看到第七章用户输入,即input( )方法,第一次遇到了书中找不到答案的问题——调用input( )方法报错Name Error(用Sublime Text 3和terminal会报这个错,用IDLE就不会)

Sample Code:

prompt = "Tell me something and I will repeat it to you. "

prompt += '\nEnter "x" if you want to stop the game: '

message = ''

while message != 'x':

        message = input(prompt)

                if message != 'x':

                                print("\n" + message + "\n")

期望的运行结果:

Tell me something and I will repeat it to you.

Enter "x" if you want to stop the game:  Hello!

Hello!

Tell me something and I will repeat it to you.

Enter "x" if you want to stop the game: 

实际运行的结果:

错误在于,程序把用户输入的Hello当作了一个name,而此name在代码里并未定义。

目前摸索出来的解决办法:

在输入时加上引号,就可以规避这个错误了。

虽然怪怪的(毕竟要求用户输入的时候必须全文放在引号里也太反人类了),不过好歹能正常执行并且看到期望的结果了。

暂且这样,毕竟目前的主要目的是继续往下学习。

至于怎么彻底解决这个问题,留到真正开始写Demo的时候再钻研吧。

上一篇 下一篇

猜你喜欢

热点阅读