3 回答

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
是的,字典設(shè)置會(huì)更好:
auth = {'amy': 'apple'....
等等。代碼修改不會(huì)那么難。獲取用戶的密碼(也可以使用它來(lái)設(shè)置)
auth[login]

TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊
您的用戶名/密碼的等效“映射”可以如下完成:
credentials = {
'amy': 'apple',
'chris': 'orange',
'jake': 'date',
}
這些允許您快速“檢查”,例如:(username in credentials返回True或False)查看用戶名是否有密碼;credentials[username]使用等獲取給定用戶名的密碼。

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊
簡(jiǎn)單、稍微安全的方式,讓您存儲(chǔ)的不僅僅是密碼
import hashlib
db = {}
hash = lambda x: hashlib.md5(x.encode()).hexdigest()
def register(user, password, mail):
db[user] = {"password": hash(password), "mail": mail}
def login(user, password):
if db[user]["password"] == hash(password):
print("success!")
else:
print("fail")
register("ironkey", "password123", "example@example.com")
login("ironkey", "password")
login("ironkey", "password123")
# get credentials for the user ironkey
print(db["ironkey"])
fail
success!
{'password': '482c811da5d5b4bc6d497ffa98491e38', 'mail': 'example@example.com'}
添加回答
舉報(bào)