Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Desafío: Autenticación de Usuario | Conceptos de POO
Programación Orientada a Objetos en Python a Fondo

book
Desafío: Autenticación de Usuario

Tarea

Swipe to start coding

¡Mejoremos tu clase User!

  1. Cree el atributo de clase is_authenticated en la clase User.
  2. Defina el método login() que toma los argumentos self y taken_password.
  3. El método login() debería comparar las contraseñas del usuario y la proporcionada.
    Si la contraseña del usuario es igual a la contraseña proporcionada, se debe asignar True al atributo is_authenticated.
    Si la contraseña del usuario no es igual a la contraseña proporcionada, se debe escribir "Wrong password!" en la consola.
  4. Defina los métodos logout(). Este método debe asignar el valor False al atributo de instancia is_authenticated.

Solución

class User:
is_authenticated = False
def __init__(self, username, password):
self.username = username
self.password = password
def login(self, taken_password):
if self.password == taken_password:
self.is_authenticated = True
print("User is authenticated")
else:
print("Wrong password!")

def logout(self):
self.is_authenticated = False
print("User is loggouted")

bob = User("bob123.user", "secret_bob_password")
print(bob.is_authenticated)

bob.login("123wsad123")
bob.login("secret_bob_password")

print(bob.is_authenticated)

bob.logout()
print(bob.is_authenticated)
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 8
class User:
___ = False
def __init__(self, username, password):
self.username = username
self.password = password
def ___(self, ___):
if self.___ == taken_password:
self.is_authenticated = ___
print("User is authenticated")
else:
print("Wrong password!")

def ___(self):
self.___ = False
print("User is loggouted")

bob = User("bob123.user", "secret_bob_password")
print(bob.is_authenticated) # False

bob.login("123wsad123") # Try to login with wrong password
bob.login("secret_bob_password")

print(bob.is_authenticated) # True

bob.logout()
print(bob.is_authenticated) # False
toggle bottom row
some-alt