input: Write a function to encrypt a message using the Caesar cipher by shifting each character in the message by a specified number of positions. If the resulting character code exceeds 126, wrap around the character codes from 33. If the message is empty, return an empty string.
  def caesar_encrypt(message, shift):
      encrypted_message = ""
      for c in message:
          encrypted_c = ord(c) + shift
          if encrypted_c > 126:
              encrypted_c -= 94
          encrypted_message += chr(encrypted_c)
      return encrypted_message
  
  assert caesar_encrypt("Hello!", 5) == "Mjqqt%"
  assert caesar_encrypt("Hello!", 0) == "Hello!"
  assert caesar_encrypt("Hello!", 94) == "Hello!"
  assert caesar_encrypt("Hello!", -5) == "Czggj!"
  assert caesar_encrypt("", 10) == ""
output: def caesar_encrypt(message, shift):
      encrypted_message = ""
      for c in message:
          encrypted_c = ord(c) + shift
          if encrypted_c > 126:
              encrypted_c -= 94
          encrypted_message += chr(encrypted_c)
      return encrypted_message