A community for students.
Here's the question you clicked on:
 0 viewing
frankdpnw
 2 years ago
I am working on exercise 2.1 on homework 2.0. We are being asked to write a function that takes parameters instead of asking for user input for our Rock, Paper, Scissors program. I created the following function but I can't capture the return value and was wondering if you could help
function:
def p1(x):
if x == 'rock' or x == 'scissors' or x == 'paper':
return x
else:
print "still trying"
and I call it this way
p1('rock')
I want to take the results of return x and put that into a variable called player_a and I can't make it work. I feel so dense thi
frankdpnw
 2 years ago
I am working on exercise 2.1 on homework 2.0. We are being asked to write a function that takes parameters instead of asking for user input for our Rock, Paper, Scissors program. I created the following function but I can't capture the return value and was wondering if you could help function: def p1(x): if x == 'rock' or x == 'scissors' or x == 'paper': return x else: print "still trying" and I call it this way p1('rock') I want to take the results of return x and put that into a variable called player_a and I can't make it work. I feel so dense thi

This Question is Closed

andrew.m.higgs
 2 years ago
Best ResponseYou've already chosen the best response.1Try player_a = p1('rock') But that would just print 'rock'?

frankdpnw
 2 years ago
Best ResponseYou've already chosen the best response.0yes, I did that and discovered that it does just as you said .. it prints rock regardless of how I call the function.

andrew.m.higgs
 2 years ago
Best ResponseYou've already chosen the best response.1Well it would print 'paper' if you said: player_a = p1('paper') print player_a Your game of Rock Paper Scissors will need 2 arguments though. Player 1's and Player 2' choice. These 2 need to be compared and the winner decided. def rps(player_1, player_2): #do logic against choices here #return the winner winner = rps('rock', 'paper) print winner Something to that effect. Hope this helps somewhat.

snark
 2 years ago
Best ResponseYou've already chosen the best response.0it must return a value either way: def f(x): if x == 'rock' or x == 'stone': return x else: return 'not'

frankdpnw
 2 years ago
Best ResponseYou've already chosen the best response.0Thanks Andrew and Snark. I am going to rethink my approach based on Andrew's comments. I think the problem I am struggling with is the fact that rock, paper or scissors are strings and when I call the function, I call it as rps('rock') or rps('paper'), etc.

rahmanig
 2 years ago
Best ResponseYou've already chosen the best response.0you can use random: function: return random(rock,scissor,paper) you can call it this way: function(rand) if that make sense. I hope that was helpful
Ask your own question
Sign UpFind more explanations on OpenStudy
Your question is ready. Sign up for free to start getting answers.
spraguer
(Moderator)
5
→ View Detailed Profile
is replying to Can someone tell me what button the professor is hitting...
23
 Teamwork 19 Teammate
 Problem Solving 19 Hero
 Engagement 19 Mad Hatter
 You have blocked this person.
 ✔ You're a fan Checking fan status...
Thanks for being so helpful in mathematics. If you are getting quality help, make sure you spread the word about OpenStudy.