Python Forum
Need help with rpsls game(Beginner corner)
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Need help with rpsls game(Beginner corner)
#1
Hi,I tried to write the codes without an instruction so I've made lots of mistakes, but I would be thankful to get reviewed and find my mistakes.


#Game:rpsls

a="rock"
b="Spock"
c="paper"
d="lizard"
e="scissors"


#So as the first step I need to assign those letters to their
#corresponding numbers

def letter_to_number(letter):
    if letter== a:
        number=0
    elif letter== b:
        number=1
    elif letter== c:
        number=2
    elif letter== d:
        number=3
    elif letter== e:
        number=4
    return number

def number_to_letter(number):
    if number==0:
        letter= a
    elif number==1:
        letter= b
    elif number==2:
        letter= c
    elif number==3:
        letter= d
    elif number==4:
        letter= e
    return letter

#So in this step I'm gonna print player and computer choices
#and then define how one of them is gonna win
import random
def game(player_choice):
    print "Player chooses" + player_choice
    player_choice=random.randrange(0, 5)
    return player_choice    
def game(computer_choice):
    print "Computer chooses" + computer_choice
    computer_choice=random.randrange(0, 5)
    return computer_choice

#So I'm gonna use the difference to declare the winner.
difference= (player_choice - computer_choice)%5
if difference == 1 or difference == 2:
    print "Player wins!"
if difference == 2 or difference ==3:
    print "Computer wins!"
else:
    print "Player and computer tie!"

    
game("rock")
game("Spock")
game("paper")
game("lizard")
game("scissors")    
Reply
#2
Line 43,47,54,56,58 - missing parentheses in print statement
line 52 - player_choice can be use only in the game() function, not outside it
Edit: Here's a simplified version of your game
#Game:rpsls
 

 
 
#So as the first step I need to assign those letters to their
#corresponding numbers
import random
def game(player_choice,computer_choice):
    if player_choice == "rock":
        number = 0
    elif player_choice == "Spock":
        number = 1
    elif player_choice == "paper":
        number = 2
    elif player_choice == "lizard":
        number = 3
    elif player_choice == "scissors":
        number = 4

    if computer_choice == "rock":
        number2 = 0
    elif computer_choice == "Spock":
        number2 = 1
    elif computer_choice == "paper":
        number2 = 2
    elif computer_choice == "lizard":
        number2 = 3
    elif computer_choice == "scissors":
        number2 = 4


 
    
 
    #So in this step I'm gonna print player and computer choices
    #and then define how one of them is gonna win


    print ("Player chooses" + player_choice)
 
    print ("Computer chooses" + computer_choice)

 
    #So I'm gonna use the difference to declare the winner.
    if number > number2 :
        difference= (number - number2)
    else:
        difference= (number2 - number)
    if difference == 1 or difference == 2:
        print ("Player wins!")
    if difference == 2 or difference ==3:
        print ("Computer wins!")
    else:
        print ("Player and computer tie!")
 
comp_choice = random.choice(["rock","Spock","paper","lizard","scissors"])
game("rock",comp_choice)
game("Spock",comp_choice)
game("paper",comp_choice)
game("lizard",comp_choice)
game("scissors",comp_choice)
pyzyx3qwerty
"The greatest glory in living lies not in never falling, but in rising every time we fall." - Nelson Mandela
Need help on the forum? Visit help @ python forum
For learning more and more about python, visit Python docs
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Beginner Higher Lower Game wallytan 2 1,584 Sep-29-2022, 05:14 PM
Last Post: deanhystad
Question Beginner Boolean question [Guessing game] TKB 4 2,295 Mar-22-2022, 05:34 PM
Last Post: deanhystad
  Tic-Tac game (Beginner's coding) Shahmadhur13 5 3,100 Aug-29-2020, 08:40 PM
Last Post: deanhystad
  Beginner Code, how to print something after a number of turns (guessing game) QTPi 4 2,740 Jun-18-2020, 04:59 PM
Last Post: QTPi
  (beginner) How do I insert a restart game option? hshe2 1 4,997 Jan-18-2017, 11:47 AM
Last Post: j.crater

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020