DEV Community

Ali Hassan
Ali Hassan

Posted on

Message Encoder and Decoder

import pyperclip

def encode(message):
    secret = ""
    for char in message:
        if char.isalpha():
            base = ord("A") if char.isupper() else ord("a")
            encoded = (ord(char) - base + 3) % 26 + base
            secret += chr(encoded)
        else:
            secret += char
    pyperclip.copy(secret)
    print("βœ… Encoded Message:", secret)
    print("πŸ“‹ Copied to clipboard.")

def decode(message):
    original = ""
    for char in message:
        if char.isalpha():
            base = ord("A") if char.isupper() else ord("a")
            decoded = (ord(char) - base - 3) % 26 + base
            original += chr(decoded)
        else:
            original += char
    pyperclip.copy(original)
    print("βœ… Decoded Message:", original)
    print("πŸ“‹ Copied to clipboard.")

def main():
    while True:
        print("\n=== MESSAGE ENCODER & DECODER ===")
        print("1. Encode a message")
        print("2. Decode a message")
        print("3. Exit")
        choice = input("Enter your choice (1/2/3): ")

        if choice == '1':
            msg = input("Enter your message to ENCODE: ")
            encode(msg)

        elif choice == '2':
            msg = input("Enter your message to DECODE: ")
            decode(msg)

        elif choice == '3':
            print("πŸ‘‹ Exiting. Goodbye!")
            break
        else:
            print("❌ Invalid option. Try again.")

if __name__ == "__main__":
    main()

Enter fullscreen mode Exit fullscreen mode

πŸ”— Visit my GitHub: AliPythonDev

Top comments (0)