通過遊戲學python 3.6 第一季 第九章 實例項目 猜數字遊戲--核心代碼--猜測次數--隨機函數和屏蔽錯誤代碼--優化代碼及註釋--簡單賬號密碼登陸--賬號的註冊查詢和密碼的找回修改--鎖定賬號--鎖定次數--菜單功能'menufile
阿新 • • 發佈:2017-08-01
lock isp 無限循環 lis true 條件判斷 elif bre format
通過遊戲學python 3.6 第一季 第九章 實例項目 猜數字遊戲--核心代碼--猜測次數--隨機函數和屏蔽錯誤代碼--優化代碼及註釋--簡單賬號密碼登陸--賬號的註冊查詢和密碼的找回修改--鎖定賬號--鎖定次數--菜單功能‘menufile
1 #猜數字--核心代碼--猜測次數--隨機函數和屏蔽錯誤代碼---優化代碼及註釋--簡單賬號密碼登陸--賬號的註冊查詢和密碼的找回修改--鎖定賬號--鎖定次數--菜單功能‘menufile‘ 2 #!usr/bin/env python 3 #-*-coding:utf-8-*- 4 #QQ124111294 5 6 #一定要把menufile.py放在同一個目錄下一定要把menufile.py放在同一個目錄下7 8 import random #調用系統隨機模塊 9 10 11 number = random.randint(1,99)#設定答案(可以假設成年齡吧) 12 amount = random.randint(3,8) #設定猜測次數 13 14 count = 0 #設定初始次數 15 print(‘本次遊戲次數為‘,amount,‘次‘) 16 17 18 import menufile #調用自定義目錄模塊--同目錄下的menufile.py文件 19 menu = menufile.menu() #給自定義目錄模塊重新定義變量,為了給新手好讀而已20 whitelist = menufile.whitelist 21 blacklist = menufile.blacklist 22 23 menu #使用自定義目錄模塊的功能 24 25 26 num = 3 #定義鎖定賬號的次數 27 while num > 0 : #如果密碼錯誤次數超過退出密碼輸入 28 user = input(‘請輸入賬號: ‘) 29 pwd = input(‘請輸入密碼: ‘) 30 31 try: 32 if user in whitelist and user not in blacklist:33 print(‘您的用戶正常!‘) 34 35 36 if pwd == menufile.whitelist[user]: 37 print("-------歡迎登陸成功-------") 38 while count <= amount: #條件成立無限循環 39 try: 40 guess = int(input(‘請猜數字‘)) 41 42 if guess == number: #條件判斷為真執行 43 print(‘猜對了‘) 44 break 45 elif guess > number: #if判斷不為真執行 46 print(‘大了‘) 47 else: #if和elif都不成立執行 48 print(‘小了‘) 49 50 count +=1 #修改初始次數+1 51 52 if count == amount: #根據條件判斷 53 countine = input(‘任意鍵重新開始,“N”鍵退出遊戲‘) 54 if countine != ‘n‘ : #設置退出按鍵 55 count = 0 #修改初始次數 56 else: 57 exit() #退出程序 58 except: 59 print(‘請輸入數字,而不是其他‘) 60 else: 61 num -= 1 #定義鎖定賬號的次數 62 print("密碼錯誤,密碼錯誤3次將被鎖定") 63 64 elif user in whitelist and user in whitelist: 65 print(‘您的用戶已經被鎖定,請聯系商家解鎖!‘) 66 menu #使用自定義目錄模塊的功能 67 else: 68 print(‘您輸入用戶不存在,請先註冊‘) 69 menu #使用自定義目錄模塊的功能 70 except: 71 print(‘賬號不存在,請重新輸入‘) 72 menu #使用自定義目錄模塊的功能 73 74 else: 75 lock = blacklist[user] = pwd 76 print("密碼試錯次數已經滿,您的用戶已經被鎖定!") 77 menu #使用自定義目錄模塊的功能 78 print(whitelist) 79 print(blacklist) 80 81 82 83 84 85 86 87 88 89 90
1 #通過遊戲學python 3.6 第一季 第九章 實例項目 猜數字遊戲--核心代碼--猜測次數--隨機函數和屏蔽錯誤代碼--優化代碼及註釋--簡單賬號密碼登陸--賬號的註冊查詢和密碼的找回修改--鎖定賬號--鎖定次數--菜單功能‘menufile 2 3 #此文件為 副文件 必須和 主文件放在 同一個目錄 4 5 #此文件只能保存為 menufile.py 否則主文件無法找到 6 7 #!usr/bin/env python 8 #-*-coding:utf-8-*- 9 #QQ124111294 10 11 12 whitelist = {‘xp‘:‘123456‘,‘win‘:‘456789‘}#設置賬號密碼 13 blacklist = {‘xp‘:‘123456‘,‘xxx‘:‘897541‘}#鎖定賬號的列表 14 15 def change(): 16 modify = input(‘修改密碼,請輸入賬號:‘) 17 again = input(‘修改密碼,請重置密碼:‘) 18 again2 = input(‘請再次確認密碼:‘) 19 if again==again2: 20 changename=‘‘‘ 21 ----恭喜!密碼修改成功...!--- 22 用戶名:{name} 23 密 碼:{password} 24 請牢記您的用戶名與密碼 25 ‘‘‘ 26 print(changename.format(name=modify,password=again)) 27 setup = whitelist[modify] = again 28 print(whitelist) 29 30 def tofind(): 31 num = 3 #定義鎖定賬號的次數 32 while num > 0 : #如果密碼錯誤次數超過退出密碼輸入 33 Looking = input(‘密碼找回,請輸入賬號:‘) 34 if Looking in whitelist: 35 restore = whitelist.get(Looking) 36 print(‘此賬號密碼為‘,restore) 37 num -= 3 38 else: 39 num -= 1 40 print("沒有此賬號!請重新輸入!!!") 41 42 43 44 def new(): 45 name=input("請輸入您要註冊的用戶名:") 46 if name not in whitelist: 47 print("恭喜!該用戶名可以被註冊!>>>") 48 password=input(‘請輸入密碼:‘) 49 password2=input(‘請再次確認密碼:‘) 50 if password==password2: 51 newname = ‘‘‘ 52 ----恭喜您用戶註冊成功!----- 53 用戶名:{name} 54 密 碼:{password} 55 請牢記您的用戶名與密碼 56 ‘‘‘ 57 print(newname.format(name=name,password=password)) 58 add = whitelist[name] = password 59 print(whitelist) 60 61 else: 62 print("該用戶名已經被註冊啦!請重新來過<<<") 63 64 def menu(): 65 while True: 66 print(‘ ‘) 67 print(‘----歡迎來到猜數字遊戲----‘) 68 print(‘按0,退出,按1,註冊賬號,按2,密碼找回,按3,修改密碼,按4,進入遊戲‘) 69 menu = input(‘請輸入要操作的選項:‘) 70 71 if menu == ‘0‘: 72 exit() 73 elif menu == ‘1‘: 74 new() 75 elif menu ==‘2‘: 76 tofind() 77 elif menu == ‘3‘: 78 change() 79 elif menu == ‘4‘: 80 break 81 82 else: 83 print("請輸入正確的按鍵>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>")menufile.py
通過遊戲學python 3.6 第一季 第九章 實例項目 猜數字遊戲--核心代碼--猜測次數--隨機函數和屏蔽錯誤代碼--優化代碼及註釋--簡單賬號密碼登陸--賬號的註冊查詢和密碼的找回修改--鎖定賬號--鎖定次數--菜單功能'menufile