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 randomly generated password does not meet these criteria, the function should retry until it does.
  
  assert generate_password()!='aaaaaAAAA'
  assert len(generate_password())==8
  assert any(c.islower() for c in generate_password())
  assert any(c.isupper() for c in generate_password())
  assert any(c.isdigit() for c in generate_password())
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