python - 如何在python中使用字典作为密码数据库
问题描述
print("Please confirm your identity user(lower case):")
pins = {"abra":9999,"anna":1888}
name = input("")
print("Now please confirm you pin:")
pin = int(input(">>"))
if pin == pins.value[0] and name == pins.keys[0]
print("You are great")
elif pin == pins.value[1] and name == pins.keys[1]
print("you are dumb")
现在我在这里要做的是将用户的输入与我已经保存在内存中的字典相匹配。请帮助我使用可以帮助我这样做的功能。另外,请向我建议任何其他我可以这样做的方式。
解决方案
你知道名字,我只是用它来获取密码:
if pins[name] == int(pin) #input gives you a string
如果 naem 不在 pin 中,这将引发异常,因此您可以捕获并使用它来告诉用户名称错误。
或者,您可以使用安全的 pins.get(name),如果名称不存在,则不会给您任何信息。
>pins = {"abra":9999,"anna":1888}
>pin = input("")
1888
>int(pin) == pins['anna']
True
推荐阅读
- python - Odoo8 - 通过给定的用户和数据范围从 Python 生成报告
- node.js - 是否可以从 serverless.yml 生成 expressJS 应用程序?
- bash - 在某些情况下通过过滤器管道输入的bash函数,否则将输入通过不变
- graphql - 不同 GraphQL 指令的说明
- azure-devops - 无法从其他项目签出 repos
- data-science - 在训练测试中表现出色,在测试集上表现不佳
- sql - SQL:比较一个值是否存在于另一个表中,反之亦然
- android - Android 10 (Q) 中的后台服务录像机
- r - 如何将数据转化为概率
- laravel - 验证成功后 Laravel 重定向到登录页面