input: Write a function to sort words in a given string by their length in decreasing alphabetical order. If the given string is empty then return an empty string.
  def sort_words_by_length(my_string):
      if not my_string:
          return ""
      words = my_string.split(' ')
      words_with_length = [(len(word), word) for word in words]
      words_with_length.sort(reverse=True)
      sorted_string = " ".join([i[1] for i in words_with_length])
      return sorted_string
  
  assert sort_words_by_length("This is the string which is to be sorted")=="string which be sorted This is to the"
  assert sort_words_by_length("Python is awesome")=="awesome Python is"
  assert sort_words_by_length("The quick brown fox jumps over the lazy dog")=="quick brown jumps over lazy dog The the fox"
  assert sort_words_by_length("")==""
  assert sort_words_by_length("Single")=="Single"
output: def sort_words_by_length(my_string):
      if not my_string:
          return ""
      words = my_string.split(' ')
      words_with_length = [(len(word), word) for word in words]
      words_with_length.sort(reverse=True)
      sorted_string = " ".join([i[1] for i in words_with_length])
      return sorted_string