【发布时间】:2018-01-25 09:00:04
【问题描述】:
我从下面的代码中得到这个错误。
Error:
**if names == inp1:
^
SyntaxError: invalid syntax** "^" points colon
我找不到问题。 代码:
dic = {"John" : 12345,
"Blake" : 456789,
"Scarlett" : 124578,
"Jake" : 852147,
"Robert" : 963247895,
"Jessica" : 4125036 }
for names in dic:
inp1 = str(input("Enter your username: ")
if names == inp1:
inp2 = int(input("Enter your password: ")
for pin in dic[names]:
if inp2 == pin:
print("*Access Granted*")
else:
print("*Access Denied")
else:
print("Wrong username")
【问题讨论】:
-
上一行括号不均匀
-
str(input("Enter your username: ")右括号在这里和下一个输入。 -
...也是后者——在
inp1...和inp2...行上 -
一些避免这些问题的建议: 1)当你打开一个括号时,立即关闭它,然后在括号内插入代码; 2)在您的编辑器中启用括号匹配; 3) 在编辑器中启用 linter
-
撇开语法和逻辑错误不谈,这不是使用字典的好方法。不要遍历所有键以找到匹配的键。
标签: python python-3.x dictionary for-loop