Learn how you can become a Python programmer in just 12 weeks.

    We respect your privacy. Unsubscribe at anytime.

    Python Project: Anagram Game (5 Core Programming Skills)

    What programming an anagram game will teach you

    On your journey to becoming a great Python programmer, you need to dive into projects that match your current level, like the anagram game.

    An anagram game will teach you the following.

    1. String manipulation. An anagram game involves manipulating strings to create new words or phrases from the letters of a given word or phrase. As such, you will gain experience with string manipulation techniques such as slicing, concatenation, and sorting.
    2. Input and output. The game will require the ability to accept user input (i.e., the word or phrase to be scrambled) and output the resulting anagrams to the user. This will require the use of Python input() function and the print() function.
    3. Looping The game will need to iterate to prompt the user for guesses until correct.
    4. Data structures. An efficient anagram game will require storing the dictionary of words in a data structure such as a list or a dictionary for quick lookups. You will learn how to use data structures in Python to optimize the game’s performance.
    5. Randomness. To make the game fun you need some randomness. This will teach you how to use randomness both to select a random word and to create a random anagram.

    Project Description

    What is an Anagram?

    An anagram of a word is another word obtained by shuffling its letters.


    race and care are anagrams of each other.

    What to do to implement an anagram game in Python

    Create a program that will show the anagram of any word the user input. The user should guess it.

    To simplify it a bit, we will make a scramble of the word. Hence, the anagram will most likely not be a correct word.

    Step 0 Get some words

    To keep it simple we will only use a short list of words.

    This way we also have a chance to guess the anagrams.

    words = [

    These are the words we will use to create anagrams.

    Step 1 Get a random word

    We can use random to get a random word from the list.

    import random
    word = random.choice(words)

    Now word contains a random word from the list of words.

    Step 2 Shuffle the characters

    This will not generate a true anagram, but shuffle the characters of the word to use.

    letters = list(word)
    anagram = ''.join(letters)

    Now we have the anagram.

    Step 3 The game

    To create the game we need a loop to keep querying the player.

    while True:
        guess = input()
        if guess == word:

    Now that is powerful.

    Want more Python projects?

    This is part of 19 Python Projects and you create a valid parentheses checker and get 6 essential programming skills.

    Python for Finance: Unlock Financial Freedom and Build Your Dream Life

    Discover the key to financial freedom and secure your dream life with Python for Finance!

    Say goodbye to financial anxiety and embrace a future filled with confidence and success. If you’re tired of struggling to pay bills and longing for a life of leisure, it’s time to take action.

    Imagine breaking free from that dead-end job and opening doors to endless opportunities. With Python for Finance, you can acquire the invaluable skill of financial analysis that will revolutionize your life.

    Make informed investment decisions, unlock the secrets of business financial performance, and maximize your money like never before. Gain the knowledge sought after by companies worldwide and become an indispensable asset in today’s competitive market.

    Don’t let your dreams slip away. Master Python for Finance and pave your way to a profitable and fulfilling career. Start building the future you deserve today!

    Python for Finance a 21 hours course that teaches investing with Python.

    Learn pandas, NumPy, Matplotlib for Financial Analysis & learn how to Automate Value Investing.

    “Excellent course for anyone trying to learn coding and investing.” – Lorenzo B.

    Leave a Comment