使用者登入介面(重點是python對excel檔案的讀寫操作)
阿新 • • 發佈:2019-02-11
4 原始碼
加入excel的內容如下# -*- coding: utf-8 -*- """ Created on Sun Jun 11 16:55:44 2017 @author: grace """ import xlrd#匯入xlrd庫 from xlutils.copy import copy #還差怎麼寫超過三次,使用者被鎖20170611 #20170612已經完成 read_excel=xlrd.open_workbook('user_sql.xls')#開啟excel檔案 sh=read_excel.sheet_by_name('Sheet1')#得到excel的sheet1的地址 row_Value_list=sh.row_values(0)#讀取excel第一行的值row_Value_list=[A,B,C] user_name_list=[]#儲存從excel檔案裡讀取的使用者資訊 flag_cnt=0#標誌是否找到輸入的使用者名稱,為1說明找到,為0說明沒找到 #print(row_Value_list) for i in range(0,5):#檔案總共有5行,第一行是檔案頭 if i==0:#跳過第一行 continue rowDict = {} row_Value=sh.row_values(i)#讀第i行的資料 #print(row_Value) for j in range(0, len(row_Value)): rowDict[row_Value_list[j]] = row_Value[j]#rowDict={'a':5,'B':2,'C':2} user_name_list.append(rowDict) #print(rowDict) #print(user_name_list) user_name=input('請輸入你的使用者名稱:') print(dict.values(user_name_list[0])) l=len(user_name_list)#得到user_name_list的長度 #print(l) for i in range(0,l): user_buffer_list=list(dict.values(user_name_list[i]))#不強制轉換會報錯 #print(user_buffer_list) if user_name==user_buffer_list[0]: flag_cnt=1 if user_buffer_list[2]=='N': print('請輸入密碼,你有三次機會,超過賬戶會被鎖') for cnt in range(0,3): password=int(input('enter a password:')) if password==user_buffer_list[1]: print('歡迎進入天堂網站') break else: print('你還有%d次機會,之後賬戶會被鎖 '%(2-cnt)) if cnt==2:#還差怎麼往excel裡寫Y #寫excel rb1 = xlrd.open_workbook('user_sql.xls') wb1 = copy(rb1) #通過get_sheet()獲取的sheet有write()方法 ws1 = wb1.get_sheet(0) ws1.write(i+1, 2, 'Y') #ws1.write(i+1, 3, 'N') wb1.save('user_sql.xls') else: print('sorry,your account is locked') if flag_cnt==0: print('你輸入的賬戶不存在!')