鱼C论坛

 找回密码
 立即注册
查看: 656|回复: 1

[已解决]全局变量没有设置如何设置

[复制链接]
发表于 2019-3-23 23:01:07 | 显示全部楼层 |阅读模式

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

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

x
user_data={}
def new_user():
    prompt=('请输入用户名')
    while True:
        name=input(prompt)
        if name in user_data:
            prompt=('此用户户名已被使用,请重新输入:')
            continue
        else:
            break
    passwd=input('请输入密码:')
    user_data[name]=passwd
    print('注册成功,赶紧登入吧^_^')
def old_user():
    prompt=('请输入用户名:')
    while True:
        name=input(prompt)
        if name not in user_data:
            prompt=('您输入的用户名不存在,请重新输入:')
            continue
        else:
            break
    passwed=input('请输入密码:')
    pwd=user_data.get(name)
    if passwed==pwd:
        print('欢迎来到WWO系统,请点击右上角结束程序')
    else:
        print('密码错误!')
def showmenu():
    prompt='''
|---新建用户N/n---|
|---登入账号E/e---|
|---退出程序:Q/q--|
|---请输入指令:'''
    while True:
        chosen=False
        while not chosen:
            chosen=input(prompt)
            if choice not in 'NnEeQn':
                print('您输入的指令代码错误,请重新输入:')
            else:
                chosen=True
        if choice=='q' or choice=='Q':
                break
        if choice=='n'or choice=='N':
                new_user()
        if choice=='e'or choice=='E':
                old_user()
showmenu()
最佳答案
2019-3-23 23:20:44
本帖最后由 jackz007 于 2019-3-23 23:29 编辑
  1. user_data = {}

  2. def new_user():
  3.     global user_data                         # 新添加此句,定义全局变量
  4.     prompt = '请输入用户名'
  5.     while True:
  6.         name = input(prompt)
  7.         if name in user_data:
  8.             prompt = '此用户户名已被使用,请重新输入:'
  9.             continue
  10.         else:
  11.             break
  12.     passwd = input('请输入密码:')
  13.     user_data[name] = passwd
  14.     print('注册成功,赶紧登入吧^_^')

  15. def old_user():
  16.     global user_data                         # 新添加此句,定义全局变量
  17.     prompt = '请输入用户名:'
  18.     while True:
  19.         name = input(prompt)
  20.         if name not in user_data:
  21.             prompt = '您输入的用户名不存在,请重新输入:'
  22.             continue
  23.         else:
  24.             break
  25.     passwed = input('请输入密码:')
  26.     pwd = user_data . get(name)
  27.     if passwed == pwd:
  28.         print('欢迎来到WWO系统,请点击右上角结束程序')
  29.     else:
  30.         print('密码错误!')

  31. def showmenu():
  32.     prompt = '''
  33. |---新建用户N/n---|
  34. |---登入账号E/e---|
  35. |---退出程序:Q/q--|
  36. |---请输入指令:'''
  37.     while True:
  38.         chosen = False
  39.         while not chosen:
  40.             choice = input(prompt)              # choice ,原程序这里使用了 chosen
  41.             if choice not in 'NnEeQn':
  42.                 print('您输入的指令代码错误,请重新输入:')
  43.             else:
  44.                 chosen = True
  45.         if choice == 'q' or choice == 'Q':
  46.             break
  47.         elif choice == 'n' or choice == 'N':    # 功能之间应该彼此隔离,原程序使用的是 if
  48.             new_user()
  49.         elif choice == 'e' or choice == 'E':    # 功能之间应该彼此隔离,原程序使用的是 if
  50.             old_user()
  51. showmenu()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-3-23 23:20:44 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2019-3-23 23:29 编辑
  1. user_data = {}

  2. def new_user():
  3.     global user_data                         # 新添加此句,定义全局变量
  4.     prompt = '请输入用户名'
  5.     while True:
  6.         name = input(prompt)
  7.         if name in user_data:
  8.             prompt = '此用户户名已被使用,请重新输入:'
  9.             continue
  10.         else:
  11.             break
  12.     passwd = input('请输入密码:')
  13.     user_data[name] = passwd
  14.     print('注册成功,赶紧登入吧^_^')

  15. def old_user():
  16.     global user_data                         # 新添加此句,定义全局变量
  17.     prompt = '请输入用户名:'
  18.     while True:
  19.         name = input(prompt)
  20.         if name not in user_data:
  21.             prompt = '您输入的用户名不存在,请重新输入:'
  22.             continue
  23.         else:
  24.             break
  25.     passwed = input('请输入密码:')
  26.     pwd = user_data . get(name)
  27.     if passwed == pwd:
  28.         print('欢迎来到WWO系统,请点击右上角结束程序')
  29.     else:
  30.         print('密码错误!')

  31. def showmenu():
  32.     prompt = '''
  33. |---新建用户N/n---|
  34. |---登入账号E/e---|
  35. |---退出程序:Q/q--|
  36. |---请输入指令:'''
  37.     while True:
  38.         chosen = False
  39.         while not chosen:
  40.             choice = input(prompt)              # choice ,原程序这里使用了 chosen
  41.             if choice not in 'NnEeQn':
  42.                 print('您输入的指令代码错误,请重新输入:')
  43.             else:
  44.                 chosen = True
  45.         if choice == 'q' or choice == 'Q':
  46.             break
  47.         elif choice == 'n' or choice == 'N':    # 功能之间应该彼此隔离,原程序使用的是 if
  48.             new_user()
  49.         elif choice == 'e' or choice == 'E':    # 功能之间应该彼此隔离,原程序使用的是 if
  50.             old_user()
  51. showmenu()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-3 01:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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