我正在嘗試在終端中創建一個簡單的登錄序列,但我不知道如何檢查用戶名和密碼是否在串列中的相同位置
usernames = ['username', 'hello']
passwords = ['password', 'world']
# my code so far:
from getpass import getpass
import time
import logins
username = input('Username: ')
password = input('Password: ')
print('Logging In...')
time.sleep(1)
def check_login(user, pasw):
if user in logins.users and pasw in logins.passes:
print('Valid')
else:
print('Invalid user and password, try again.')
check_login(username, password)
#除了我可以輸入(用戶名,世界)或(你好,密碼)的事實外,它有效#我正在嘗試檢查每個用戶名和密碼是否按相同順序(0,0,1,1等)和#return 它是有效的。任何幫助表示贊賞:)
uj5u.com熱心網友回復:
您可以使用zip:
def check_login(user, pasw):
if (user, pasw) in zip(logins.users, logins.passes):
print('Valid')
else:
print('Invalid user and password, try again.')
如果要重復呼叫此方法,最好創建一個O(1)查找結構:
lookup = dict(zip(logins.users, logins.passes))
def check_login(user, pasw):
if lookup.get(user, None) == pasw:
print('Valid')
else:
print('Invalid user and password, try again.')
uj5u.com熱心網友回復:
根據我對這個問題的了解,您可以使用index內置串列檢查它們的索引,以斷言用戶和密碼是否在同一位置。
def check_login(user, pasw):
if user in logins.users and pasw in logins.passes and logins.users.index(user)==logins.passes.index(pasw):
print('Valid')
else:
print('Invalid user and password, try again.')
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/347331.html
