Here's the question you clicked on:

55 members online
  • 0 replying
  • 0 viewing

frankdpnw

  • 3 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
  1. andrew.m.higgs
    • 3 years ago
    Best Response
    You've already chosen the best response.
    Medals 1

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

  2. frankdpnw
    • 3 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

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

  3. andrew.m.higgs
    • 3 years ago
    Best Response
    You've already chosen the best response.
    Medals 1

    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.

  4. snark
    • 3 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

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

  5. frankdpnw
    • 3 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    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.

  6. rahmanig
    • 3 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    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

  7. Not the answer you are looking for?
    Search for more explanations.

    • Attachments:

Ask your own question

Sign Up
Find more explanations on OpenStudy
Privacy Policy