国产探花免费观看_亚洲丰满少妇自慰呻吟_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()            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 博白县| 桂平市| 临潭县| 长乐市| 靖远县| 道真| 石楼县| 阿图什市| 新丰县| 青海省| 临泉县| 钟山县| 息烽县| 怀化市| 平乡县| 黔西县| 吴忠市| 调兵山市| 深泽县| 玛纳斯县| 安阳县| 泾川县| 滨海县| 石阡县| 青河县| 临安市| 邵阳县| 信宜市| 泸州市| 新竹县| 嘉义市| 保德县| 小金县| 湖北省| 慈利县| 东山县| 五指山市| 隆林| 桃江县| 高台县| 凤城市|