国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python登錄注冊驗證功能實現

2020-02-15 21:54:40
字體:
來源:轉載
供稿:網友

簡介

本次項目登錄注冊驗證是對之前學習知識點的加深學習,這次項目的練習的知識點有函數、判斷語句、循環語句、文件操作等。

項目流程

運行代碼之后,輸出登錄或者注冊選項。

當選擇登錄之后,輸入用戶名密碼,如果該用戶信息沒有注冊過,就輸出登錄失敗,如果該用戶信息已經注冊過,就顯示登錄成功。

當選擇注冊之后,輸入用戶名密碼,如果該用戶信息沒有注冊過,就輸出注冊成功,如果該用戶信息已經注冊過,就顯示用戶名已經存在,注冊失敗。

代碼流程

運行代之后首先執行main()函數,mian()函數中接收用戶輸入的用戶名和密碼,用戶選擇登錄,就調用loing()函數,將用戶輸入的信息在和存放用戶信息的文件中的信息進行比對,如果有該用戶的信息就登錄成功,否則失敗,用戶選擇注冊,在接收到用戶輸入的用戶名密碼之后,調用register()函數,在這里將調用 user_exist()函數進行對用戶輸入的信息進行判斷,如用戶輸入的信息存在存放用戶信息的文件里,輸出注冊失敗,否則注冊成功。

在login()和user_exist()函數中調用了錯誤處理函數。

錯誤處理函數介紹

try:
.....
except IOError:
......

ry中的代碼執行沒有出現錯誤,就不再執行except中的代碼,如果try中的代碼出現錯誤,就執行except中的代碼。

代碼實現

def login(username, password):  """  用于用戶名和密碼的驗證  :param username:用戶名  :param paaword:密碼  :return:True,用戶驗證成功;False,用戶驗證失敗  """  try:    f = open("users", "r", encoding="utf-8")    for line in f:      line = line.strip() # 清除換行符      # 無參數時移除兩側空格,換行符      # 有參數時移除兩側指定的字符      line_list = line.split("$")      if line_list[0] == username and line_list[1] == password:        # print("成功")        return True    return False  except IOError:    return Falsedef register(username, password):  """  注冊用戶  1、打開文件  2、用戶名$密碼  :param username:用戶名  :param password:密碼  :return:True:注冊成功;  """  with open("users", "a", encoding="utf-8") as f:    temp = "/n" + username + "$" + password    f.write(temp)    return Truedef user_exist(username):  """  檢測用戶名是否存在  :param username:要檢測的用戶名  :return: True:用戶名存在;False:用戶名不存在  """  # 一行一行的去查找,如果用戶名存在,return True:False  try:    with open("users", "r", encoding="utf-8") as f:      for line in f:        line = line.strip()        line_new = line.split("$")        if line_new[0] == username:          return True      return False  except IOError:    return Falsedef main():  while True:    print("歡迎登錄xxx系統")    arg = input("1:登錄,2:注冊")    if arg == "1":      uer = input("請輸入用戶名:")      pwd = input("請輸入密碼:")      if login(uer, pwd):        print("成功")        break      else:        print("失敗")    elif arg == "2":      user = input("請輸入用戶名:")      pwd = input("請輸入密碼:")      is_exist = user_exist(user)      if is_exist:        print("用戶名已經存在,注冊失敗")      else:        if register(user, pwd):          print("注冊成功")          continue        else:          print("注冊失敗")    else:      print("輸入錯誤,請重新輸入")main()            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南溪县| 湘乡市| 大足县| 天等县| 福泉市| 罗定市| 太康县| 修水县| 新竹县| 浮梁县| 论坛| 驻马店市| 新邵县| 平原县| 仙居县| 新郑市| 盖州市| 邯郸市| 仁怀市| 舟山市| 乳源| 扎囊县| 双鸭山市| 千阳县| 杭锦后旗| 海南省| 神农架林区| 合川市| 颍上县| 洛川县| 泸溪县| 嘉禾县| 芜湖县| 铜陵市| 泗洪县| 青龙| 新建县| 安徽省| 汾阳市| 电白县| 清丰县|