PYTHON定义函数制作简单登录程序(详细)

环境:python3.*

结构:

image

 

dict_name = {}

#定义一个字典,后面用到

def newuser():

#定义注册函数

    prompt1='login desired:'

    while True:

#循环开始一直为真,除break外。

        name = input(prompt1)

#用户输入一个值,赋值给name

            if (dict_name.__contains__(name)):

#在字典里查找看有没有用户输入的相对应的键。

                prompt1 = '--name taken,try another:'

                continue

#如果存在则重新赋值prompt1.输出字符提醒用户该账户已存在,尝试换一个,并且跳出本次循环。循环下一次

            else:

            break

#如果不存在,则结束循环

    pwd= input('password:')

#用户输入并且赋值给pwd。

    dict_name[name]=pwd

#更改字典中变量’name’的值为变量‘pwd’,不存在则新建一个键。

def olduser():

#定义登录函数

    name = input('login:')

#用户输入登录名

    pwd = input('password:')

#用户输入密码

    password = dict_name.get(name)

#在字典中查找用户输入用户名的所对应的值,即密码,并且赋值给password变量

    if password == pwd:

#如字典中的值和用户输入的匹配,则输出提示信息

        print('--welcome back--'),name

    else:

        print('--login incorrect--')

#否则,输出失败的提示信息

def showmenu():

    prompt = '''

    (N)ew User Login

    (E)ntering User Login

    (Q)uit

    Enter choice:'''

#格式化输出这些信息

    while True:

#循环开始

        choice = input(prompt).strip()[0].lower()

#定义变量,strip()[0]表示去掉两端的空格;去第一个字符。lower()表示将大写格式转换为小写。

        print('\n--You picked : %s' %(choice))

#输出提示信息,让用户输入选择。

        if choice not in 'neq':

#如果用户输入的不在‘neq’三个字符里,提示让用户按照规章重试。

            print('--invalid option,try again--')

        else:

#如符合要求,执行以下嵌套判断语句。

            if choice=='n':

#如用户输入的是‘n’,则调用函数‘newuser’

                newuser()

            elif choice=='e':

#如输入的是‘e’,则调用函数‘olduser’。

                olduser()

            else:

#其他的选项则,退出循环

                print('quit')

                break

if __name__ == '__main__':

    showmenu()

#正常运行时,__name=='__main__'是成立的,所以只运行,该式子前面的部分

#被当作模块调用时,则不成立.该函数详细解释请看:

https://blog.csdn.net/yjk13703623757/article/details/77918633

猜你喜欢

转载自www.cnblogs.com/joinbestgo/p/10618241.html