python - 如何在 Python 中使用 dict 制作登录系统
问题描述
我想用字典登录系统。这段代码可以工作,但如果我在登录屏幕上写一个不同的用户名,程序会出错。
database={'name': '1234', 'name2': '5678', 'name3': '9012'}
def log():
name = input('Enter username: ')
ask = input('Enter pin: ')
if ask in database[name]:
print ('Welcome', name)
else:
print ('Invalid code')
log()
解决方案
您正在查询而database[name]
没有首先检查name
. database
而是这样做:
database={'name': '1234', 'name2': '5678', 'name3': '9012'}
def log():
name = input('Enter username: ')
ask = input('Enter pin: ')
if name in database:
if ask == database[name]: # changed this to an 'equals' rather than 'in'
print ('Welcome', name)
else:
print ('Pin wrong!')
else:
print ('Username does not exist.')
log()
推荐阅读
- c# - 如何获取 CarouselView 的当前页码?
- scala - 如何使用 JDI 检测 invokedynamic 和 scalac 2.12 输出代码
- c++ - 为什么在默认成员初始化时内置类型的零成员?
- google-cloud-platform - 如何使用 gcloud CLI 子命令获取 Google Cloud Composer (Airflow) 环境变量值
- sql-server - Microsoft SQL Server Management Studio 连接别名
- python - 如何检测我的帮助命令 discord.py 的反应
- javascript - Symfony 5 执行 AJAX 查询时出现错误 500
- spring-transactions - 如何使用spring数据反应性mongodb transactionalOperator限制事务范围
- r - 努力使用 rvest 从网页中提取 divtable 类型的元素
- sql - MB到TB的转换和聚合