一個簡單的登陸小游戲,輸入用戶名和密碼,如果和user_passwd.txt中內容匹配,則打印“welcome to login...”,如果三次輸入錯誤則將該用戶列入黑名單,無法再用該用戶名登陸。
1.python 對.txt文件的操作
a.python對文件的讀取
1 with open('user_passwd.txt') as f: 2 lines = f.readlines() 3 for line in lines: 4 print(line)
b.pyhton對文件的寫入
1 with open('user_passwd.txt','a') as f: 2 f.write(str)
2.split() 函數
當拿到文件的一行是往往需要對其進行切割才能得到我們想要的字段,split()函數會返回一個列表
str.split(s,[number_1])[number_2]
parameter s:切割點
parameter number_1: 切割段數
parameter number_2: 取切割后的列表的第number_2個元素
登陸小游戲代碼實現
1 flag = 0 2 for i in range(3): 3 if flag == 1: 4 break 5 username = input("name:") 6 passwd = input("password:") 7 with open('black_list.txt') as f: #is username in black_list 8 lines = f.readlines() 9 for line in lines: 10 if username+'\n' == line: 11 print("sorry, you are in black_list!") 12 exit(0) #exit 13 with open('user_passwd.txt') as f: # not in black_list 14 lines = f.readlines() 15 for line in lines: 16 str_1 = line.split(',')[0] 18 str_2 = line.split(',')[1] 20 if username == str_1 and passwd + '\n' == str_2: 21 print("welcome to login...") 22 flag = 1 23 break 24 else: 25 print("username or password is not correct!") 26 if i == 2 and flag == 0: # write in black_list 27 with open('black_list.txt','a') as f: 28 f.write(username) 29 f.write('\n')