zoukankan      html  css  js  c++  java
  • 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(' --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

  • 相关阅读:
    如何用Percona XtraBackup进行MySQL从库的单表备份和恢复【转】
    8款实用Sublime text 3插件推荐
    windows下配置nginx+php环境
    Windows10+Ubuntu双系统安装[
    window yii2 安装插件 报yiisoft/yii2 2.0.x-dev requires ext-mbstring错
    Composer常见问题
    Yii2中如何使用CodeCeption
    php 单进程SAPI生命周期
    php的SAPI,CLI SAPI,CGI SAPI
    HTTPS服务器配置
  • 原文地址:https://www.cnblogs.com/jojoword/p/10618241.html
Copyright © 2011-2022 走看看