input: Write a python function to lemmatize a sentence using NLTK. 
  assert lemmatize_sentence("The striped bats are hanging on their feet for best") == "The striped bat be hang on their foot for best"
  assert lemmatize_sentence("The running children were quickly stopped by the guard") == "The run child be quickly stop by the guard"
  assert lemmatize_sentence("She enjoys playing with her friends") == "She enjoy play with her friend"
output: def lemmatize_sentence(sentence):
      import nltk
      from nltk.corpus import wordnet
      from nltk.stem import WordNetLemmatizer
      from nltk.tokenize import word_tokenize
      
      nltk.download('punkt')
      nltk.download('averaged_perceptron_tagger')
      nltk.download('wordnet')
      
      lemmatizer = WordNetLemmatizer()
      
      def get_wordnet_pos(treebank_tag):
          if treebank_tag.startswith('J'):
              return wordnet.ADJ
          elif treebank_tag.startswith('V'):
              return wordnet.VERB
          elif treebank_tag.startswith('N'):
              return wordnet.NOUN
          elif treebank_tag.startswith('R'):
              return wordnet.ADV
          else:
              return wordnet.NOUN
      
      tokens = word_tokenize(sentence)
      tagged_tokens = nltk.pos_tag(tokens)
      lemmatized_sentence = ' '.join([lemmatizer.lemmatize(token, get_wordnet_pos(tag)) for token, tag in tagged_tokens])
      
      return lemmatized_sentence