input: Write a function to generate a random password given a set of letters, numbers, and characters. The function should randomly select a specified number of characters from the given set and return the password.
  assert generate_random_password() == "5Gh9@b#z"
  assert generate_random_password() == "3Tc&*v7w"
output: import random
  import string
  
  def generate_random_password(length=8):
      characters = string.ascii_letters + string.digits + string.punctuation
      return ''.join(random.choice(characters) for _ in range(length))