廣告:歡迎你們到 路飛學城 學習 Python~python
很喜歡 Python 「薪」時代 這個詞~
因此咱們要擁抱 「人工智能」~
擁抱 「Python~」vim
前提:下載 Python,若是是 Mac 電腦會自帶 Python。函數
Mac 電腦打開終端輸入:學習
cd desktop touch hello.py vim hello.py 使用 'i' 輸入 print('Hello World') 輸入 :wq 退出 python3 hello.py
而後咱們會在終端看到:Hello World!
恭喜你,這就是使用 Python 寫的第一行代碼!編碼
當咱們完成 Hello World 以後,會發現這太簡單了,那麼咱們確定要繼續學習,例如:語法、數據類型、字符編碼、循環、函數等等。。
下面先看一下用戶登陸程序需求:人工智能
基礎需求:
讓用戶輸入用戶名密碼
認證成功後顯示歡迎信息
輸錯三次後退出程序code
升級需求:
能夠支持多個用戶登陸 (提示,經過列表存多個帳戶信息)
用戶3次認證失敗後,退出程序,再次啓動程序嘗試登陸時,仍是鎖定狀態(提示:需把用戶鎖定的狀態存到文件裏)ip
分析:
1.既然是登陸,確定分登陸成功和登陸失敗,即「判斷」,因此我想到了 if else;
2.輸錯3次後退出,能夠考慮 for 循環;
3.帳戶信息的列表或者文件中確定有不少用戶信息,因此要遍歷出來分別和用戶輸入的 username 對比,還有鎖定帳戶名單中的信息也要遍歷出來對比,這裏少不了使用 for 循環;
4.鎖定的用戶存到文件裏,須要讀取文件,文件寫入等;
5.說到文件,咱們還須要一個本地的文件 lock_userinfo.txt 來存儲鎖定用戶信息;ci
邏輯
輸入用戶名,檢查是否被鎖定?get
若是鎖定,提示:已鎖定 若是未鎖定,輸入密碼 讀取用戶信息文件,判斷用戶名是否存在? 若是不存在,提示:請註冊 若是存在,判斷密碼是否正確? 若是正確,提示:success 若是不正確,提示:wrong 密碼不正確的話繼續輸入密碼,判斷是否正確? 正確的話,提示:success 不正確的話,記錄次數 當次數到3次時,提示用戶:lock 而且把用戶名存入 lock_userinfo.txt 文件
代碼
# 輸入用戶名 username = input('username: ') # 判斷用戶名是否被鎖定 lock_users = open('lock_userinfo.txt', 'r') for item in lock_users: lock_user = item.strip() if username == lock_user: print('You have been locked!') break lock_users.close() # 若是沒有被鎖定 if username != lock_user: password = input('password: ') with open('userinfo.txt') as users: for account in users: acc_user = account.strip().split(':')[0] acc_pwd = account.strip().split(':')[1] if username == acc_user: if password == acc_pwd: print('Welcome back,', username, '~') break else: print('Wrong password!') for i in range(0, 2): i = i + 1 password = input('password: ') if password == acc_pwd: print('Welcome back,', username, '~') break else: print('Wrong password!') if i == 2: print('Sorry, you do not have a chance!') lock_write = open('lock_userinfo.txt', 'a+') lock_write.write('\n') lock_write.write(username) lock_write.close() if username != acc_user: print('Plase sign up!') print('------ end ------')
文件目錄
根目錄下有3個文件:
login.py => python 代碼
userinfo.txt => 存放用戶信息
lock_userinfo.txt => 存放鎖定的用戶信息
userinfo.txt
admin:123 Bob:123 Helen:123
lock_userinfo.txt
Bob
最後送上一句話:紙上得來終覺淺,絕知此事要躬行~