input: Write a function to generate a random password given a set of possible characters including letters, numbers, and special characters. The function should return a string of 8 characters.
  
  assert generate_password()=="8rT7#Zk@"
  assert generate_password()=="9Qw&s6Lx"
  assert generate_password()=="aBcDeFgH"
  assert generate_password()=="12345678"
  assert generate_password()=="!@#$%^&*"
output: import random
  import string
  
  def generate_password():
      characters = string.ascii_letters + string.digits + string.punctuation
      return ''.join(random.choice(characters) for _ in range(8))