欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)登錄與注冊(cè)系統(tǒng)

 更新時(shí)間:2020年11月30日 09:55:39   作者:江liuer_666  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)登錄與注冊(cè)系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python實(shí)現(xiàn)登錄與注冊(cè)系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

實(shí)現(xiàn)功能

1.調(diào)用文本文件里的用戶信息
2.可以將注冊(cè)信息存儲(chǔ)在文本文件里
3.實(shí)現(xiàn)了密碼格式的限制

具體用戶信息將如下格式存儲(chǔ)在txt文本文件下

轉(zhuǎn)換后便于代碼利用的格式(列表中嵌套字典)

具體代碼如下:

#-*- coding=utf8 -*- 
# @author:sololi
# date: 2020/11/3
# 文件說(shuō)明 :
import sys
def register(username,password):#登錄功能,且與存儲(chǔ)用戶表的文本文件進(jìn)行比較
  #驗(yàn)證用戶名
  shuju=readfile()
  jg1 = 0
  i = 0
  while (i < len(shuju)):
   if (username == shuju[i]["用戶名"]):
    print("用戶名正確")
    jg1 = 1
    break
   i += 1
  # 用戶名錯(cuò)誤將不再驗(yàn)證密碼
  if (jg1 != 1):
   print("用戶名錯(cuò)誤")
  # 驗(yàn)證密碼
  if (jg1 == 1):
   jg2 = 0
   i = 0
   while (i < len(shuju)):
    if (password == shuju[i]["密碼"]):
     print("密碼正確")
     jg2 = 1
     break
    i += 1
   if (jg2 != 1):
    print("密碼錯(cuò)誤")

def logon(username):#注冊(cè)功能,且以正確格式存入文本文件
   shuju=readfile()
   jg3 = 0
   i = 0
   while (i < len(shuju)):
    if (username == shuju[i]["用戶名"]):
     print("用戶名已經(jīng)存在")
     jg3 = 1
     break
    i += 1
   if(jg3 == 0):
    while True:
     password = input("請(qǐng)輸入注冊(cè)的密碼(密碼不能小于6位,且不能為純數(shù)字)")
     if (str.isdigit(password)==1) or (len(password)<6):
       print("密碼格式錯(cuò)誤")
     else:
      break
    passwordagain=input("請(qǐng)?jiān)俅未_認(rèn)密碼")
    while True:
     if(password==passwordagain):
      break
     else:
      print("兩次密碼不一致")
      passwordagain = input("請(qǐng)?jiān)俅未_認(rèn)密碼")
    # 將注冊(cè)的用戶信息存儲(chǔ)到文本文件中
    f = open("data", mode='a+', encoding="utf8")
    if shuju == []:
     f.write("用戶名:{},密碼:{}".format(username, password))
    if shuju != []:
     f.write("\n用戶名:{},密碼:{}".format(username, password))
    print("注冊(cè)成功")
    f.close()

def readfile():#將數(shù)據(jù)轉(zhuǎn)換成列表字典形式,放在data.txt中便于后面登錄與注冊(cè)存放數(shù)據(jù)
 f = open('data', "r+", encoding="utf8")
 shuju = []
 b = []
 aa = {}
 for line in f.readlines():
  line = line.strip('\n')
  a = line.split(' ')
  i = 0
  while i < len(a):
   b = a[i].split(',')
   i += 1

  j = 0
  while j < len(b):
   if b == " ":
    break
   c = b[j].split(':', 1)
   aa[c[0]] = c[1]
   i += 1
   j += 1

  shuju.append(aa.copy()) # copy是為了防止添加是數(shù)據(jù)類型不同出錯(cuò)
 f.close()
 return shuju

while True:
 choice=input("登錄輸入1,注冊(cè)輸入2,其他任意鍵退出")
 if choice=="1":
  id=input("輸入您的賬號(hào)")
  pw=input("輸入您的密碼")
  register(id,pw)
  break
 if choice=="2":
  id=input("輸入你注冊(cè)的賬號(hào)")
  logon(id)
  continue
 else:
  print("退出成功")
  sys.exit(0)

初學(xué)者作品,有錯(cuò)請(qǐng)指教

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 解決pyqt5異常退出無(wú)提示信息的問(wèn)題

    解決pyqt5異常退出無(wú)提示信息的問(wèn)題

    這篇文章主要介紹了解決pyqt5異常退出無(wú)提示信息的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • 詳解PyTorch預(yù)定義數(shù)據(jù)集類datasets.ImageFolder使用方法

    詳解PyTorch預(yù)定義數(shù)據(jù)集類datasets.ImageFolder使用方法

    這篇文章主要為大家介紹了PyTorch預(yù)定義數(shù)據(jù)集類datasets.ImageFolder使用方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Python使用PEfile模塊實(shí)現(xiàn)分析PE文件

    Python使用PEfile模塊實(shí)現(xiàn)分析PE文件

    PeFile模塊是Python中一個(gè)強(qiáng)大的便攜式第三方PE格式分析工具,用于解析和處理Windows可執(zhí)行文件,本文主要就來(lái)講講如何使用PEfile模塊實(shí)現(xiàn)分析PE文件,需要的可以參考下
    2023-08-08
  • python安裝cx_Oracle和wxPython的方法

    python安裝cx_Oracle和wxPython的方法

    這篇文章主要介紹了python安裝cx_Oracle和wxPython的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Python運(yùn)行第一個(gè)PySide2的窗體程序

    Python運(yùn)行第一個(gè)PySide2的窗體程序

    本文主要介紹了Python運(yùn)行第一個(gè)PySide2的窗體程序,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Python xlrd模塊導(dǎo)入過(guò)程及常用操作

    Python xlrd模塊導(dǎo)入過(guò)程及常用操作

    這篇文章主要介紹了Python xlrd模塊導(dǎo)入過(guò)程及常用操作,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Python操作dict時(shí)避免出現(xiàn)KeyError的幾種解決方法

    Python操作dict時(shí)避免出現(xiàn)KeyError的幾種解決方法

    這篇文章主要介紹了Python操作dict時(shí)避免出現(xiàn)KeyError的幾種解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 在Python中通過(guò)threading模塊定義和調(diào)用線程的方法

    在Python中通過(guò)threading模塊定義和調(diào)用線程的方法

    由于著名的GIL的存在,Python中雖然能創(chuàng)建多條線程,但卻不能同時(shí)執(zhí)行...anyway,這里我們還是來(lái)學(xué)習(xí)一下在Python中通過(guò)threading模塊定義和調(diào)用線程的方法
    2016-07-07
  • python 實(shí)現(xiàn)關(guān)聯(lián)規(guī)則算法Apriori的示例

    python 實(shí)現(xiàn)關(guān)聯(lián)規(guī)則算法Apriori的示例

    這篇文章主要介紹了python 實(shí)現(xiàn)關(guān)聯(lián)規(guī)則算法Apriori的示例,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-09-09
  • 基于PyQt5完成pdf轉(zhuǎn)word功能

    基于PyQt5完成pdf轉(zhuǎn)word功能

    本文介紹的pdf轉(zhuǎn)word功能還有一些待完善地方,例如可增加預(yù)覽功能,實(shí)現(xiàn)每頁(yè)預(yù)覽,當(dāng)然我們可以在后續(xù)階段逐漸完善,對(duì)基于PyQt5完成的pdf轉(zhuǎn)word功能感興趣的朋友一起看看吧
    2022-06-06

最新評(píng)論