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

《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的时候再钻研吧。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容