好的,所以我在python中制作一个文件保存软件,让用户可以制作,删除文件并将文件上传到程序中的秘密文件夹。
以下是我遇到问题的部分:
user = input("User :")
if user is "Aymen":
print("Welcome")
else:
print("Access denied")
为什么我的程序无论输入是否正确,都会显示“拒绝访问”?
答案 0 :(得分:3)
请勿使用is
来测试等效性,请使用==
is
是一个关键字,用于测试两个值是否与内存中的确切实例完全相同。但仅仅因为两件事情是平等的并不意味着Python实际上认为他们是同一个存储在一个位置的对象。它最常用于None
,但绝不会影响您使用它。
你应该使用
if user == "Aymen":
答案 1 :(得分:0)
使用is
代替is
来比较字符串。 >>> s = input("Enter : ")
Enter : Aymen
>>> s is "Aymen"
False
>>> s == "Aymen"
True
测试身份,而不是平等 。这意味着Python只是简单地比较一个对象所在的内存地址。
示例 -
{{1}}
答案 2 :(得分:0)
如果要与字符串或变量进行比较,请使用" ==",而不是"是"。 "是"用于测试,而不是比较两个变量或字符串。
if user == "Aymen":
print("Welcome")