鱼C论坛

 找回密码
 立即注册
查看: 461|回复: 2

【新人求助】字典输入,然后查询不到

[复制链接]
发表于 2018-8-1 20:11:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我写了个程序:
print('|---新建用户:N/n---|')
print('|---登录账号:E/e---|')
print('|---退出程序:Q/q---|')

while 1 :
    code = input('|---请输入指令:')
    ifo = dict()
   
    if code in ['N','n','E','e','q','Q']:
        if code == 'N' or code == 'n'  :
            name = input('请输入用户名:')
            
            if name not in ifo:
                ifo[name] = input('请输入密码:')
                print('注册成功,赶紧登陆试试吧!')

            else :
                print('该用户已经存在!')
            print(list(ifo))
            

        if code == 'E' or code == 'e':
            name = input('请输入用户名:')
            if name in ifo:
                passwd = input('请输入您的密码:')

                if passwd == dict1[name]:
                    print('欢迎您登陆 %d' %name)

                else :
                    print('您的密码输入不正确')
            else:
                print('您输入的用户不存在,请重新输入:')

            
        if code == 'Q' or code == 'q':
            break
    else:
        print('请输入正确的指令:')
是咱们甲鱼老师的课后题,我在输入n,N,q,Q,都没有问题。
问题出在我输入n,然后输出一个用户资料。然后输入E查询的时候,始终查询不到。
eg:
输入n, 用户名输入m,密码输入123.
查询e, 用户名输入m,就显示该用户不存在了。
求各位看一看。麻烦大家了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-8-1 20:47:34 | 显示全部楼层
已经解决啦,谢谢大家。把ifo放到while前面就行了。。剩下的都是一些小问题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-1 20:49:52 | 显示全部楼层
因为这条语句
ifo = dict()
位于死循环内部,
所以每次循环字典 ifo 都会重新创建。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-6 01:38

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表