-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrock_paper_scissors.py
More file actions
82 lines (68 loc) · 2 KB
/
Copy pathrock_paper_scissors.py
File metadata and controls
82 lines (68 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# Rock-paper-scissors-lizard-Spock template
# The key idea of this program is to equate the strings
# "rock", "paper", "scissors", "lizard", "Spock" to numbers
# as follows:
#
# 0 - rock
# 1 - Spock
# 2 - paper
# 3 - lizard
# 4 - scissors
import random
# helper functions
def name_to_number(name):
# delete the following pass statement and fill in your code below
if name == 'rock':
number = 0;
elif name == 'Spock':
number = 1;
elif name == 'paper':
number = 2;
elif name == 'lizard':
number = 3;
elif name == 'scissors':
number = 4;
else:
print 'Invalid name!'
return number
# convert name to number using if/elif/else
# don't forget to return the result!
def number_to_name(number):
# delete the following pass statement and fill in your code below
if number == 0:
name = 'rock';
elif number == 1:
name = 'Spock';
elif number == 2:
name = 'paper';
elif number == 3:
name = 'lizard';
elif number == 4:
name = 'scissors';
else:
print 'Number is not in correct range!'
return name
# convert number to a name using if/elif/else
# don't forget to return the result!
def rpsls(player_choice):
# delete the following pass statement and fill in your code below
print ""
print 'Player chooses ' + player_choice
player_number = name_to_number(player_choice);
comp_number = random.randrange(0,5);
comp_choice = number_to_name(comp_number);
print 'Computer chooses ' + comp_choice
result = (comp_number - player_number) % 5;
if result == 1 or result == 2:
print 'Computer wins!'
elif result == 3 or result == 4:
print 'Player wins!'
else:
print 'Player and computer tie!'
# test your code - THESE CALLS MUST BE PRESENT IN YOUR SUBMITTED CODE
rpsls("rock")
rpsls("Spock")
rpsls("paper")
rpsls("lizard")
rpsls("scissors")
# always remember to check your completed program against the grading rubric