最有效的方法下面的代碼主要執行以下操作:到文本文件的內容轉換成字典在python
- 注意到文件的內容,並讀入兩個列表(剝離和拆分)
- 拉鍊兩一起列入字典
- 使用字典創建「登錄」功能。
我的問題是:是否有更簡單更高效(快速)創建從文件內容的字典的方法:
文件:
user1,pass1
user2,pass2
代碼
def login():
print("====Login====")
usernames = []
passwords = []
with open("userinfo.txt", "r") as f:
for line in f:
fields = line.strip().split(",")
usernames.append(fields[0]) # read all the usernames into list usernames
passwords.append(fields[1]) # read all the passwords into passwords list
# Use a zip command to zip together the usernames and passwords to create a dict
userinfo = zip(usernames, passwords) # this is a variable that contains the dictionary in the 2-tuple list form
userinfo_dict = dict(userinfo)
print(userinfo_dict)
username = input("Enter username:")
password = input("Enter password:")
if username in userinfo_dict.keys() and userinfo_dict[username] == password:
loggedin()
else:
print("Access Denied")
main()
對於你的答案,請求E:
a)使用現有功能和代碼,以適應 b)中提供的解釋/評論(特別是對於使用分流/條) c)當使用JSON /鹹菜,包括所有對於初學者的必要信息訪問
在此先感謝
從未保持密碼明文,你應該使用某種散列函數,例如https://passlib.readthedocs.io/ –