简单的python密码提示

时间:2016-09-02 23:34:21

标签: python python-3.x

我终于决定开始学习python作为我的第一语言,到目前为止我喜欢它。我;使用python3和IDLE3。当写一个简单的密码提示我遇到问题:/ script如下。

import sys

password = input("Enter your password: ")
if password != "pword" :
    sys.exit()
print("Password correct")

现在,当我运行脚本并输入pass作为密码时,我收到以下错误:

root@kali:~/Desktop# python password1.py
Enter your password: pword
Traceback (most recent call last):
File "password1.py", line 2, in <module>
password = input("Enter your password: ")
File "<string>", line 1, in <module>
NameError: name 'pword' is not defined

提前感谢您的帮助,感谢您。

1 个答案:

答案 0 :(得分:1)

正在发生两件事之一。任

A)您的副本错误,您的脚本实际上是

...
if password != pword:  # note the lack of quotes
...

或B)您正在使用Python 2

import sys
print(sys.version)
# should show 3.x.y per your question, but if it's showing 2.x.y, that'd be why

Python2与Python3重要的原因是input内置函数在两者之间的工作方式不同。在Python2中,input尝试解析命名空间内的用户输入,例如

# Python2
>>> foo = "bar"
>>> spam = input("enter something: ")
enter something: foo
>>> print(spam)
bar

虽然Python3只是将输入作为字符串

返回
# Python3
>>> foo = "bar"
>>> spam = input("enter something: ")
enter something: foo
>>> print(spam)
foo