input: Write a python function to clean and tokenize a tweet by removing punctuation and stopwords.
  assert clean_tweet("I'm so excited to be going to the #MuseumTour! #BigDay #travel") == ['excited', 'going', 'MuseumTour', 'BigDay', 'travel']
  assert clean_tweet("This is a sample tweet, with punctuation!") == ['This', 'sample', 'tweet']
  assert clean_tweet("Can't wait to travel again... #wanderlust") == ['Cant', 'wait', 'travel', 'wanderlust']
output: def clean_tweet(tweet):
      import string
      from nltk.corpus import stopwords
      from nltk.tokenize import word_tokenize
      import nltk
      
      # Download stopwords and punkt if not already downloaded
      nltk.download('stopwords')
      nltk.download('punkt')
      
      stop_words = set(stopwords.words('english'))
      
      # Remove punctuation
      tweet = tweet.translate(str.maketrans('', '', string.punctuation))
      
      # Tokenize the tweet
      words = word_tokenize(tweet)
      
      # Remove stopwords and return cleaned words
      cleaned_words = [word for word in words if word.lower() not in stop_words]
      
      return cleaned_words