当我进入
username = str(input("Username:"))
password = str(input("Password:"))
运行程序后,我用我的名字填写输入,然后回车
username = sarang
我得到错误
NameError: name 'sarang' is not defined
我努力了
username = '"{}"'.format(input("Username:"))
和
password = '"{}"'.format(input("Password:"))
但我最终得到了同样的错误。
如何将输入转换为字符串并修复错误?
原文由 sarang.g 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 Python 2.x 中使用
raw_input()
input()
在 Python 3.x 中使用 — 来获取字符串。您有两个选择:通过 Python 3.x 运行您的代码或在您的代码中将
input()
更改为raw_input()
。Python 2.x
input()
将用户输入评估为代码,而不是数据。它在您现有的代码中查找一个名为sarang
的变量,但没有找到;因此NameError
被抛出。旁注:您可以将其添加到您的代码中并改为调用
input_func()
。它会自动选择正确的输入法,因此您的代码在 Python 2.x 和 3.x 中的工作方式相同:查看 此问题 以获取更多详细信息。