How to decode Leet Speak (where numbers resemble letters (7->T, 1->I, 5->S, 3 -> E)) in Python

1 Answer

0 votes
# 7H15 M3554G3 is written in leet speak, where numbers resemble letters.
# place each leetspeak character with its matching letter
# (7 -> T, 1 -> I, 5 -> S, 3 -> E) and build a new string
# 7H15 -> THIS | M3554G3 -> MESSAGE

# Your brain can interpret distorted or number‑substituted letters
# surprisingly well because it recognizes the overall word
# shapes and patterns, not just individual characters.

# ------------------------------------------------------------
# Convert a single leet character into a normal alphabet letter
# ------------------------------------------------------------
def decode_char(c: str) -> str:
    table = {
        '7': 'T',
        '1': 'I',
        '5': 'S',
        '3': 'E',
        '4': 'A',
        '0': 'O'
    }
    return table.get(c, c)  # keep letters like H, M, G, etc.

# ------------------------------------------------------------
# Convert an entire string from leet speak to normal text
# ------------------------------------------------------------
def decode_leet_speak(s: str) -> str:
    return ''.join(decode_char(c) for c in s)


def main():
    # Test lines provided by the user
    lines = [
        "7H15 M3554G3",
        "53RV35 7O PR0V3",
        "H0W 0UR M1ND5 C4N",
        "D0 4M4Z1NG 7H1NG5!",
        "1MPR3551V3 7H1NG5!",
        "1N 7H3 B3G1NN1NG",
        "17 WA5 H4RD BU7",
        "N0W, Y0UR M1ND 1S",
        "R34D1NG 17",
        "4U70M471C4LLY."
    ]

    # Decode and print each line
    for line in lines:
        print(decode_leet_speak(line))


if __name__ == "__main__":
    main()


"""
run:

THIS MESSAGE
SERVES TO PROVE
HOW OUR MINDS CAN
DO AMAZING THINGS!
IMPRESSIVE THINGS!
IN THE BEGINNING
IT WAS HARD BUT
NOW, YOUR MIND IS
READING IT
AUTOMATICALLY.

"""

 



answered 3 hours ago by avibootz
edited 2 hours ago by avibootz
...