Python Rock Paper Scissors.

Posts 1–4 of 4 · Page 1 of 1
Python Rock Paper Scissors.
Check my Python rock paper scissors out.

Code:
import random

options = ["Rock","Paper","Scissors"]
AI = random.choice(options)
user = raw_input("Pick either Rock, Paper or Scissors: ")
user = user.lower()
if user == 'rock' or 'paper' or 'scissors':
    print "The computer has drawn %s whilst you have drawn %s " % (AI,user)
if user == 'rock':
    if AI == 'Rock':
        print 'Tie Game'
    elif AI == 'Paper':
        print 'AI Wins'
    else:
        print 'User Wins'
if user == 'paper':
    if AI == 'Rock':
        print 'User Wins'
    elif AI == 'Paper':
        print 'Tie Game'
    else:
        print 'AI Wins'
if user == 'scissors':
    if AI == 'Rock':
        print 'AI Wins'
    elif AI == 'Paper':
        print 'User Wins'
    else:
        print 'Tie Game'
It's been a while since I've seen raw input used in python. Also, ew python 2.
Quote Originally Posted by BLURREDDOGE View Post
ew python 2
^ what they said
I took a stab at this using python 3.6.4 (My favourite). At first, i didn't want to try, as i thought i would just end up complicating things a lot more, but i actually think i did a pretty good job, and i had a lot of fun doing it as well.
Code:
import random
import sys

#this is a script i added a bit extra, bare minimum code is in spoiler below

def main():
    cheats = False
    if len(sys.argv) == 2:
        cheats = True if sys.argv[1] == "-c"


    choices = ["rock", "paper", "scissors"]
    computer_action = random.choice(choices)

    if cheats:
        print(f"Computer chose: {computer_action}")

    player_action = None
    while player_action == None:
        player_action = input("Choose your weapon: ").lower()

        if player_action not in choices:
            player_action = None

    computer_result = choices.index(computer_action)
    player_result = choices.index(player_action)

    if player_result != computer_result:
        if player_result != 2 and computer_result != 2:
            winner = "Computer" if computer_result > player_result else "You"

        elif computer_result > player_result:
            winner = "Computer" if player_result == 1 else "You"

        elif player_result > computer_result:
            winner = "You" if computer_result == 1 else "Computer"
    else:
        print("It's a Tie!")
        main()

    print(f"{winner} won!")
    sys.exit()

if __name__ == "__main__":
    main()
 
Bare Minimum

Code:
import random
#this is the bare minimum for (my) rock paper scissors.
#It removes error checking, and re-rolling on a tie, as well as letting python close itself.

choices = ["rock", "paper", "scissors"]

computer_action = random.choice(choices)
player_action = input("Choose your weapon: ").lower()

computer_result = choices.index(computer_action)
player_result = choices.index(player_action)

if player_result != computer_result:
	if player_result != 2 and computer_result != 2:
		winner = "Computer" if computer_result > player_result else "You"

	elif computer_result > player_result:
		winner = "Computer" if player_result == 1 else "You"

	elif player_result > computer_result:
		winner = "You" if computer_result == 1 else "Computer"
else:
	print("It's a Tie!")

print(f"{winner} won!")
Posts 1–4 of 4 · Page 1 of 1

Post a Reply

Similar Threads

Tags for this Thread

None

Talk with us