input: Write a function to clean a tweet by removing all punctuation, special characters, and stopwords. The function should return the cleaned tweet as a list of words. If the input tweet is empty, the function should return an empty list.
  from nltk.corpus import stopwords
  
  def clean_tweet(tweet):
      if not tweet:
          return []
      tweet_clean = re.sub(r'[^\w\s]','',tweet) 
      tokens = tweet_clean.split() 
      stop_words = set(stopwords.words("english")) 
      filtered_tokens = [w for w in tokens if not w in stop_words] 
      return filtered_tokens
  
  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 test #example")==['test', 'example']
  assert clean_tweet("")==[]
  assert clean_tweet("Hello, World!")==['Hello', 'World']
  assert clean_tweet("#1 #2 #3")==['1', '2', '3']
output: from nltk.corpus import stopwords
  
  def clean_tweet(tweet):
      if not tweet:
          return []
      tweet_clean = re.sub(r'[^\w\s]','',tweet) 
      tokens = tweet_clean.split() 
      stop_words = set(stopwords.words("english")) 
      filtered_tokens = [w for w in tokens if not w in stop_words] 
      return filtered_tokens