input: Write a function to encode a given sentence into Morse code using the provided dictionary. The function should return the encoded message. If the given sentence is empty, the function should return an empty string.
  assert encode("Hello world") == ".... . .-.. .-.. ---  .-- --- .-. .-.. -.."
  assert encode("SOS") == "... --- ..."
  assert encode("") == ""
  assert encode("123") == ".---- ..--- ...--"
output: def encode(sentence):
      morse_code = {
          'A': '.-', 'B': '-...', 'C': '-.-.', 'D': '-..', 'E': '.', 'F': '..-.', 'G': '--.', 'H': '....',
          'I': '..', 'J': '.---', 'K': '-.-', 'L': '.-..', 'M': '--', 'N': '-.', 'O': '---', 'P': '.--.',
          'Q': '--.-', 'R': '.-.', 'S': '...', 'T': '-', 'U': '..-', 'V': '...-', 'W': '.--', 'X': '-..-',
          'Y': '-.--', 'Z': '--..', '0': '-----', '1': '.----', '2': '..---', '3': '...--', '4': '....-',
          '5': '.....', '6': '-....', '7': '--...', '8': '---..', '9': '----.', ' ': ' '
      }
      encoded_message = ' '.join(morse_code[char.upper()] for char in sentence if char.upper() in morse_code)
      return encoded_message