input: Write a function to generate a random password of length 8 characters, containing at least one lowercase letter, one uppercase letter, and one number. If the generated password does not meet the criteria, the function should generate a new password until it does. If the function call is successful, it should return the password.
  
  assert generate_password()=='G5fPqZ7j'
  assert generate_password()=='A3bC1dE2'
  assert generate_password()=='L9mN0oP4'
output: import random
  import string
  
  def generate_password():
      while True:
          password = ''.join(random.choices(string.ascii_letters + string.digits, k=8))
          if any(c.islower() for c in password) and any(c.isupper() for c in password) and any(c.isdigit() for c in password):
              return password