最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的用戶系統(tǒng)

 更新時(shí)間:2022年01月24日 10:02:48   作者:火螢  
大家好,本篇文章主要講的是用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的用戶系統(tǒng),感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下

前言

 如標(biāo)題所說(shuō),這是一個(gè)非常簡(jiǎn)單的程序,并不涉及任何高深的學(xué)問(wèn),更適合一些剛?cè)胧諴ython的新人研究一下基礎(chǔ)內(nèi)容的用法,此案列對(duì)于有些編程經(jīng)驗(yàn)的人來(lái)講可以說(shuō)是過(guò)于簡(jiǎn)單,甚至是簡(jiǎn)陋。

本文涉及的知識(shí)點(diǎn):列表、字典、用戶輸入、程序輸出。

關(guān)于程序的一些設(shè)計(jì):

相關(guān)的功能:用戶登入,用戶注冊(cè),用戶信息修改

正文

首先我們來(lái)寫(xiě)程序的大體框架,然后我們?cè)侔凑瘴覀兊男枨笸锩嫣畛淦渌δ堋?/p>

user_name = []  # 聲明一個(gè)列表來(lái)保存下面那個(gè)字典user_name_
user_name_ = {
    'name': '',
    'password': ''
}  # 聲明一個(gè)用來(lái)保存賬號(hào)信息的字典
user_id = -1  # 用戶序列號(hào)
 
 
def start():  # 程序開(kāi)始界面
    print('----------用戶登入程序----------')
    print('|    溫馨提示:用戶名不可以過(guò)長(zhǎng)   |')
    print('|    密碼請(qǐng)記牢,暫時(shí)不支持找回   |')
    print('------------------------------')
    user_selection()
 
 
def user_selection(): # 用戶選擇需要進(jìn)行的操作
    pass  # pass用來(lái)占行,防止不寫(xiě)內(nèi)容報(bào)錯(cuò)
    
 
def log_in():  # 用戶登入
    pass
 
 
def sign_up():  # 用戶注冊(cè)
    pass
 
 
def check_user_information():  # 用戶信息檢查
    pass
 
 
def modify_information():  # 修改信息
    pass
 
 
start()  # 調(diào)用程序開(kāi)始界面來(lái)顯示信息

接下里我們?cè)趤?lái)完善用戶選擇檢測(cè)、用戶登入、及用戶信息檢查這三個(gè)界面,按照流程來(lái)是先打印界面——>用戶做出選擇——>登入或者注冊(cè);

首先是用戶選擇的代碼

def user_selection():  # 用戶選擇需要進(jìn)行的操作
    selection = input('1.登入 2.注冊(cè) (輸入數(shù)字即可,例如1): ')
    if selection == '1':  # 判斷是否為1
        log_in()
    elif selection == '2':  # 判斷是否為2,或者不是其中的任何選擇
        sign_up()
    else:
        print('您輸入的并不是1或者2,請(qǐng)重新輸入!')
        user_selection()

用戶選擇為1則調(diào)用log_in()來(lái)繼續(xù)用戶登入行為,為2則是用戶注冊(cè)行為,不為1或2則提示錯(cuò)誤并重新選擇。

接下來(lái)是用戶登入界面的代碼了。

def log_in():  # 用戶登入
    username = input('請(qǐng)輸入用戶名: ')
    password = input('請(qǐng)輸入密碼: ')
    # 首先獲取用戶輸入的用戶名以及密碼,然后傳遞check_user_information(username,password)
    check_user_information(username, password)
    # 在這里修改了一下用戶信息檢查的代碼,加入了2個(gè)需要傳遞的參數(shù)。

然后就是檢查的代碼了

def check_user_information(username_, password_):  # 用戶信息檢查,username和password后面的_僅僅為了方便區(qū)分.
    global user_id  # 引用函數(shù)外的變量
    for i in range(len(user_name)):  # 遍歷全部的用戶信息
        if user_name[i]['name'] == username_ and user_name[i]['password'] == password_:  # 如果登入成功
            print('登入成功')
            user_id = i  # 成功獲取用戶序列
            break  # 結(jié)束循環(huán)
    if not user_id == -1:  # 通過(guò)user_id來(lái)判斷是否成功登入,如果不等于-1則登入成功 if not 如果不 也可以寫(xiě) if user_id != -1
        # 登入成功
        modify_information(user_id)  # 進(jìn)入信息修改界面來(lái)改賬號(hào)或者密碼,傳入user_id方便查找
    else:
        # 登入失敗
        print('賬號(hào)密碼錯(cuò)誤或賬號(hào)不存在。')
        user_selection()  # 返回用戶選擇
    # user_name[i]['name'] 的意思是先獲取 列表user_name[i] 所保存的字典user_name_,然后再查看字典里name的值

然后我們來(lái)完成用戶注冊(cè)的代碼

def sign_up():  # 用戶注冊(cè)
    username = input('請(qǐng)輸入用戶名: ')
    password = input('請(qǐng)輸入密碼: ')
    # 首先讓用戶輸入要注冊(cè)的賬號(hào)和密碼
    user_name_['name'] = username
    user_name_['password'] = password
    # 將賬號(hào)密碼先寫(xiě)入字典再寫(xiě)入列表
    user_name.append(user_name_)
    print('注冊(cè)成功,即將返回選擇界面')
    user_selection()  # 接著再返回用戶選擇

最后就是用戶信息修改了,超級(jí)簡(jiǎn)單

def modify_information(user_id_):  # 修改信息
    global user_id
    selection = input('1.修改賬號(hào) 2.修改密碼 3.退出登入 (輸入數(shù)字即可,例如1):')
    if selection == '1':
        user_name[int(user_id_)]['name'] = input('輸入新的賬號(hào)')  # user_id是字符串要int一下
        user_id = -1
        start()  # 返回最開(kāi)始
    elif selection == '2':
        user_name[int(user_id_)]['password'] = input('輸入新的密碼')
        user_id = -1
        start()
    elif selection == '3':
        user_id = -1
        start()
    else:
        print('您輸入的似乎并不是其中的選項(xiàng)請(qǐng)重新輸入')
        modify_information(user_id)

總結(jié)

非常簡(jiǎn)單,接下來(lái)貼出全部代碼

user_name = []  # 聲明一個(gè)列表來(lái)保存下面那個(gè)字典user_name_
user_name_ = {
    'name': '',
    'password': ''
}  # 聲明一個(gè)用來(lái)保存賬號(hào)信息的字典
user_id = -1  # 用戶序列號(hào)
 
 
def start():  # 程序開(kāi)始界面
    print('----------用戶登入程序----------')
    print('|    溫馨提示:用戶名不可以過(guò)長(zhǎng)   |')
    print('|    密碼請(qǐng)記牢,暫時(shí)不支持找回   |')
    print('------------------------------')
    user_selection()
 
 
def user_selection():  # 用戶選擇需要進(jìn)行的操作
    selection = input('1.登入 2.注冊(cè) (輸入數(shù)字即可,例如1): ')
    if selection == '1':  # 判斷是否為1
        log_in()
    elif selection == '2':  # 判斷是否為2,或者不是其中的任何選擇
        sign_up()
    else:
        print('您輸入的并不是1或者2,請(qǐng)重新輸入!')
        user_selection()
 
 
def log_in():  # 用戶登入
    username = input('請(qǐng)輸入用戶名: ')
    password = input('請(qǐng)輸入密碼: ')
    # 首先獲取用戶輸入的用戶名以及密碼,然后傳遞check_user_information(username,password)
    check_user_information(username, password)
    # 在這里修改了一下用戶信息檢查的代碼,加入了2個(gè)需要傳遞的參數(shù)。
 
 
def sign_up():  # 用戶注冊(cè)
    username = input('請(qǐng)輸入用戶名: ')
    password = input('請(qǐng)輸入密碼: ')
    # 首先讓用戶輸入要注冊(cè)的賬號(hào)和密碼
    user_name_['name'] = username
    user_name_['password'] = password
    # 將賬號(hào)密碼先寫(xiě)入字典再寫(xiě)入列表
    user_name.append(user_name_)
    print('注冊(cè)成功,即將返回選擇界面')
    user_selection()  # 接著再返回用戶選擇
 
 
def check_user_information(username_, password_):  # 用戶信息檢查,username和password后面的_僅僅為了方便區(qū)分.
    global user_id  # 引用函數(shù)外的變量
    for i in range(len(user_name)):  # 遍歷全部的用戶信息
        if user_name[i]['name'] == username_ and user_name[i]['password'] == password_:  # 如果登入成功
            print('登入成功')
            user_id = i  # 成功獲取用戶序列
            break  # 結(jié)束循環(huán)
    if not user_id == -1:  # 通過(guò)user_id來(lái)判斷是否成功登入,如果不等于-1則登入成功 if not 如果不 也可以寫(xiě) if user_id != -1
        # 登入成功
        modify_information(user_id)  # 進(jìn)入信息修改界面來(lái)改賬號(hào)或者密碼,傳入user_id方便查找
    else:
        # 登入失敗
        print('賬號(hào)密碼錯(cuò)誤或賬號(hào)不存在。')
        user_selection()  # 返回用戶選擇
    # user_name[i]['name'] 的意思是先獲取 列表user_name[i] 所保存的字典user_name_,然后再查看字典里name的值
 
 
def modify_information(user_id_):  # 修改信息
    global user_id
    selection = input('1.修改賬號(hào) 2.修改密碼 3.退出登入 (輸入數(shù)字即可,例如1):')
    if selection == '1':
        user_name[int(user_id_)]['name'] = input('輸入新的賬號(hào)')  # user_id是字符串要int一下
        user_id = -1
        start()  # 返回最開(kāi)始
    elif selection == '2':
        user_name[int(user_id_)]['password'] = input('輸入新的密碼')
        user_id = -1
        start()
    elif selection == '3':
        user_id = -1
        start()
    else:
        print('您輸入的似乎并不是其中的選項(xiàng)請(qǐng)重新輸入')
        modify_information(user_id)
 
 
start()  # 調(diào)用程序開(kāi)始界面來(lái)顯示信息

到此這篇關(guān)于用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的用戶系統(tǒng)的文章就介紹到這了,更多相關(guān)Python用戶系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python算法深入理解風(fēng)控中的KS原理

    python算法深入理解風(fēng)控中的KS原理

    這篇文章主要為大家介紹了python算法深入理解風(fēng)控中的KS原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2021-11-11
  • python線程里哪種模塊比較適合

    python線程里哪種模塊比較適合

    在本篇文章里我們給大家整理了關(guān)于python線程里哪種模塊比較適合的相關(guān)知識(shí)點(diǎn),需要的朋友們可以學(xué)習(xí)下。
    2020-08-08
  • 解決python Markdown模塊亂碼的問(wèn)題

    解決python Markdown模塊亂碼的問(wèn)題

    今天小編就為大家分享一篇解決python Markdown模塊亂碼的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • Python?Requests庫(kù)知識(shí)匯總

    Python?Requests庫(kù)知識(shí)匯總

    這篇文章主要介紹了Python?Requests庫(kù)學(xué)習(xí)總結(jié),本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • opencv python Canny邊緣提取實(shí)現(xiàn)過(guò)程解析

    opencv python Canny邊緣提取實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了opencv python Canny邊緣提取實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • pycharm debug 斷點(diǎn)調(diào)試心得分享

    pycharm debug 斷點(diǎn)調(diào)試心得分享

    這篇文章主要介紹了pycharm debug 斷點(diǎn)調(diào)試心得分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04
  • python實(shí)現(xiàn)微信發(fā)送郵件關(guān)閉電腦功能

    python實(shí)現(xiàn)微信發(fā)送郵件關(guān)閉電腦功能

    這篇文章主要介紹了python實(shí)現(xiàn)微信發(fā)送郵件關(guān)閉電腦功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • python應(yīng)用文件讀取與登錄注冊(cè)功能

    python應(yīng)用文件讀取與登錄注冊(cè)功能

    這篇文章主要介紹了python應(yīng)用文件讀取寫(xiě)登錄注冊(cè)功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • python中可以發(fā)生異常自動(dòng)重試庫(kù)retrying

    python中可以發(fā)生異常自動(dòng)重試庫(kù)retrying

    這篇文章主要介紹了python中可以發(fā)生異常自動(dòng)重試庫(kù)retrying,retrying是一個(gè)極簡(jiǎn)的使用Python編寫(xiě)的庫(kù),主題更多相關(guān)內(nèi)容需要的朋友可以參考一下
    2022-06-06
  • python多線程同步實(shí)例教程

    python多線程同步實(shí)例教程

    這篇文章主要給大家介紹了關(guān)于python多線程同步的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08

最新評(píng)論

化隆| 平武县| 远安县| 朝阳市| 宜君县| 武乡县| 新田县| 醴陵市| 崇州市| 阿合奇县| 新兴县| 尚义县| 遂平县| 南溪县| 浦江县| 荥经县| 靖远县| 抚顺县| 九江县| 孟津县| 册亨县| 汉源县| 邹平县| 通河县| 虎林市| 互助| 湖南省| 库伦旗| 柳林县| 长白| 宁南县| 庆安县| 手游| 大竹县| 夏津县| 肃北| 拜城县| 罗山县| 广安市| 皋兰县| 石柱|