# Super Simple Python: Rock Paper Scissors

Super Simple Python is a series dedicated to creating super simple Python projects for beginners to be able to do in under 15 minutes. In this episode, we’ll be covering building a rock paper scissors game in under 30 lines of code!

Video version:

Just like the Super Simple Python: Random Number Generator, we’ll start by importing the `random` module.

``import random``

After importing the `random` module, let’s create a way to generate a random “play”. That is, randomly pick either rock, paper, or scissors. First we’ll make a dictionary that contains three key-value pairs for rock, paper, and scissors. Then we’ll create a `generate` function that will randomly generate a number and return the corresponding play.

``````_dict = {
0: "rock",
1: "paper",
2: "scissors"
}

def generate():
num = random.randint(0, 2)
return _dict[num]
``````

## Rock Paper Scissors Game Logic

Next we’ll implement the game logic. We’ll ask the player for rock, paper, or scissors as input and convert that input to lowercase. We convert it to lowercase just to match the casing we wrote in the dictionary. Then we’ll call the `generate` function to generate the computer’s move.

``````player = input("Rock, Paper, or Scissors? ").lower()
computer = generate()``````

Once we have both moves, we’ll just compare them in a series of `if` and `elif` statements. Notice that we have to use `elif` and not `else if`. That’s just Python specific syntax. We first handle the tie case and then all the other ones.

``````if player == computer:
print(f"Tie! You chose {player} and the computer chose {computer}")
elif player == "rock" and computer == "paper":
print(f"Computer wins! You chose {player} and the computer chose {computer}")
elif player == "rock" and computer == "scissors":
print(f"You win! You chose {player} and the computer chose {computer}")
elif player == "paper" and computer == "rock":
print(f"You win! You chose {player} and the computer chose {computer}")
elif player == "paper" and computer == "scissors":
print(f"Computer wins! You chose {player} and the computer chose {computer}")
elif player == "scissors" and computer == "rock":
print(f"Computer wins! You chose {player} and the computer chose {computer}")
elif player == "scissors" and computer == "paper":
print(f"You win! You chose {player} and the computer chose {computer}")``````

When we run the program to play the game it should look like the images below. Note that we can answer the input prompt with any casing we want and it still works!

I run this site to help you and others like you find cool projects and practice software skills. If this is helpful for you and you enjoy your ad free site, please help fund this site by donating below! If you can’t donate right now, please think of us next time.

One-Time
Monthly
Yearly

#### Make a yearly donation

Choose an amount

\$5.00
\$15.00
\$100.00
\$5.00
\$15.00
\$100.00
\$5.00
\$15.00
\$100.00

Or enter a custom amount

\$