Ask your own question, for FREE!
MIT 6.189 A Gentle Introduction to Programming Using Python (OCW) 8 Online
OpenStudy (anonymous):

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

OpenStudy (andrew.m.higgs):

Try player_a = p1('rock') But that would just print 'rock'?

OpenStudy (anonymous):

yes, I did that and discovered that it does just as you said .. it prints rock regardless of how I call the function.

OpenStudy (andrew.m.higgs):

Well 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.

OpenStudy (anonymous):

it must return a value either way: def f(x): if x == 'rock' or x == 'stone': return x else: return 'not'

OpenStudy (anonymous):

Thanks 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.

OpenStudy (anonymous):

you 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

Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!
Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!