为了账号安全,请及时绑定邮箱和手机立即绑定

input()error - NameError:name'...'未定义

input()error - NameError:name'...'未定义

蛊毒传说 2019-05-24 15:14:48
input()error - NameError:name'...'未定义我尝试运行这个简单的python脚本时收到错误:input_variable = input ("Enter your name: ")print ("your name is" + input_variable)让我说我输入“dude”,我得到的错误是:line 1, in <module>input_variable = input ("Enter your name: ")File "<string>", line 1, in <module>NameError: name 'dude' is not defined我正在运行Mac OS X 10.9.1,我正在使用安装python 3.3附带的Python Launcher应用程序来运行脚本。编辑:我意识到我用2.7运行这些脚本。我想真正的问题是我如何使用3.3版运行我的脚本?我想如果我将我的脚本拖放到我的应用程序文件夹中的Python 3.3文件夹内的Python Launcher应用程序之上,它将使用3.3启动我的脚本。我想这个方法仍然用2.7启动脚本。那么我如何使用3.3?
查看完整描述

4 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

您正在运行Python 2,而不是Python 3.为了在Python 2中运行,请使用raw_input

input_variable = raw_input ("Enter your name: ")print ("your name is" + input_variable)


查看完整回答
反对 回复 2019-05-24
?
慕森卡

TA贡献1806条经验 获得超8个赞

由于您是为Python 3.x编写的,因此您需要使用以下命令开始编写脚本:

#!/usr/bin/env python3

如果您使用:

#!/usr/bin/env python

它将默认为Python 2.x. 如果没有任何内容以开头,这些就会出现在脚本的第一行(又名shebang)。

如果你的脚本刚开始:

#! python

然后你可以将它改为:

#! python3

虽然这种较短的格式只能被少数程序识别,例如启动器,所以它不是最佳选择。

前两个示例使用得更为广泛,有助于确保您的代码可以在任何安装了Python的计算机上运行。


查看完整回答
反对 回复 2019-05-24
?
临摹微笑

TA贡献1982条经验 获得超2个赞

您应该使用raw_input因为您使用的是python-2.7。当您input()在变量上使用时(例如s = input('Name: '):),它将在Python环境中执行命令而不保存您在变量(s)上写的内容,如果您编写的内容未定义则会创建错误。

raw_input()将正确保存您在变量上写的内容(例如f = raw_input('Name : '):),并且在不创建任何可能的错误的情况下它不会在Python环境中执行它:

input_variable = raw_input('Enter Your Name : ')print("Your Name Is  : " + (input_variable))


查看完整回答
反对 回复 2019-05-24
  • 4 回答
  • 0 关注
  • 777 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信