字典求助
问题在下面 dict1={}#创建账号
print('注册界面')
usename1 = str(input('请设置您的账号'))
while True:
passward1 = str(input('请设置您的密码:'))
passward2 = str(input('请确认您的密码:'))
if len(passward1) <= 6:
print('请将您的密码设置得复杂些,以增强安全性')
if passward1 != passward2:
print('您两次密码设置不正确,请您重新输入')
else:break
dict1.setdefault(usename1,'passward1')
#登录界面
print('登录界面')
while True:
usename = str(input('请输入您的账号:'))
passward = str(input('请输入您的密码:'))
if usename not in dict1 :
print('输入错误请重新输入')
if dict1 != passward:
print('0')
else:break
print('欢迎登陆')
运行结果
请设置您的账号1
请设置您的密码:2
请确认您的密码:2
请将您的密码设置得复杂些,以增强安全性
登录界面
请输入您的账号:1
请输入您的密码:2
0
请输入您的账号: 问一下大佬为什么账号密码在字典里时对应的
if dict1 != passward:
print('0')
最后却打印了 0 啊 那你希望它打印出来什么呢? jackz007 发表于 2021-1-10 20:55
那你希望它打印出来什么呢?
不应该打印
欢迎登录吗 本帖最后由 jackz007 于 2021-1-10 21:26 编辑
这一句有错
dict1.setdefault(usename1,'passward1')
必须改为
dict1.setdefault(usename1 , passward1) # 去掉 passward1 外面的单引号 jackz007 发表于 2021-1-10 21:25
这一句有错
必须改为
大佬可以讲解一下吗 本帖最后由 jackz007 于 2021-1-10 21:52 编辑
emmmahaha1 发表于 2021-1-10 21:41
大佬可以讲解一下吗
变量 passward1 用单引号括起来以后,就不再是一个变量,会变成一个字符串 'passward1' ,而你需要存入字典的,显然是变量 passward1 的内容,而不应该是字符串'passward1',照你的写法,存入字典的就是字符串 'passward1',这就意味着,不论你设定的密码是什么,登录的时候,正确的密码都是 'passward1',不信你可以试试。 jackz007 发表于 2021-1-10 21:50
变量 passward1 用单引号括起来以后,就不再是一个变量,会变成一个字符串 'passward1' ,而你需 ...
{:10_275:}确实
那问一下
平时用的账号密码一般是啥啊
变量还是字符串啊{:10_262:} emmmahaha1 发表于 2021-1-10 22:09
确实
那问一下
平时用的账号密码一般是啥啊
还是说两者都有啊
emmmahaha1 发表于 2021-1-10 22:09
确实
那问一下
平时用的账号密码一般是啥啊
以你目前的水平应该好好看书,就是给你解释了,你也会听不懂的。 jackz007 发表于 2021-1-10 22:13
以你目前的水平应该好好看书,就是给你解释了,你也会听不懂的。
👌
页:
[1]