input: Write a function to print the top 5 most frequent words in a given sentence. The function should take a single string as input and should print a list of tuples where each tuple contains a word and its frequency. If the input sentence is empty, the function should print an empty list.
  
  
  assert top_5_frequent_words("Python is an interpreted, high-level, general-purpose programming language.") == [('Python', 1), ('is', 1), ('an', 1), ('interpreted,', 1), ('high-level,', 1)]
  assert top_5_frequent_words("The quick brown fox jumps over the lazy dog") == [('The', 1), ('quick', 1), ('brown', 1), ('fox', 1), ('jumps', 1)]
  assert top_5_frequent_words("To be or not to be, that is the question") == [('to', 2), ('be', 2), ('or', 1), ('not', 1), ('that', 1)]
  assert top_5_frequent_words("") == []
  
output: def top_5_frequent_words(sentence):
      if not sentence:
          print([])
          return
      
      words = sentence.split()
      freq = {}
      
      for word in words:
          if word in freq:
              freq[word] += 1
          else:
              freq[word] = 1
      
      sorted_words = sorted(freq.items(), key=lambda item: item[1], reverse=True)
      top_5 = sorted_words[:5]
      
      print(top_5)