python作業(二)實現注冊功能和登陸功能


#1、實現注冊功能

輸入:username、passowrd,cpassowrd

     #最多可以輸錯3次

     #3個都不能為空

     #用戶名長度最少6位, 最長20位,用戶名不能重復

     #密碼長度最少8位,最長15位

     #兩次輸入的密碼要一致

     #注冊成功之后,要寫到文件里面

 #2、登陸功能實現:

     #3次

 用戶名和密碼你去文件里面取

一、注冊

 1 f=open('users.txt','a+')
 2 f.seek(0)
 3 res=f.read()
 4 all_users=[]
 5 for i in res.split('/n'):
 6     username=i.split(',')[0]
 7     all_users.append(username)
 8 for i in range(3):
 9     username=input('username:')
10     pwd=input('pwd:')
11     cpwd=input('cpwd')
12     if len(username)<6 and len(username)>20:
13         print('用戶名輸入大於六位,小於20位')
14     elif len(pwd)>8 and len(pwd)<15:
15         print('密碼輸入最小8位,最大15位')
16     elif username in all_users:
17         print('用戶名已注冊')
18     elif pwd!=cpwd:
19         print('兩次輸入不一致')
20     else:
21         info='%s,%s' %(username,pwd)
22         f.write(info)
23         print('注冊成功')
24         break
25 else:
26     print('輸入次數太多')
27 
28 f.close()

 

二、登錄

1、第一種方法:直接取文件中的值進行對比

 1 f=open('users.txt','r')
 2 res=f.read()
 3 allnamep=res.split('\n')
 4 for i in range(3):
 5     username=input('username')
 6     pwd=input('pwd')
 7     user_info=username+','+pwd
 8     
9 if user_info not in allnamep: 10 print('帳號密碼不存在') 11 else: 12 print('登陸成功') 13 14 f.close()

2、第二種方法:將文件讀取出來,存入字典,從字典中取值進行取比

 1 userall={}
 2 f=open('users.txt','r')
 3 res=f.read()
 4 for i in res.split('\n'):
 5     if i.strip()!='': #判斷res不等於空的行
 6         username = i.split(',')[0]
 7         pwd=i.split(',')[1]
 8         userall[username]=pwd
 9 #print(userall)
10 for i in range(3):
11     username=input('username:')
12     pwd=input('pwd:')
13     if username in userall:
14         if pwd==userall.get(username):
15             print('登陸成功')
16     else:
17         print('帳號/密碼錯誤')

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM