I am trying to have a login system where user input will be crosschecked with tinydb's json file. I managed to get the registration working but when I try logging in I got this error.
TypeError: unsupported operand type(s) for &: 'list' and 'QueryInstance'
I tried removing password verification and it worked. Not entirely sure the reason behind it. Would be great if I can receive some guidance as to what went wrong. Thanks!
def login():
username = input("Enter Username: ")
password = input("Enter Password: ")
User = Query()
if(db.search(User.username == username) & (User.password == password)):
print("Login Successful!")
loggedInScreen()
else:
print("Incorrect Username or Password")
login()
It should have been and
not &
. The operand and
will check both the conditions that you are trying to validate whereas &
does a bitwise AND and it doesn't like the types of data provided for the bitwise
AND, hence the error.