-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMini Game Project(RPSLS).py
106 lines (88 loc) · 2.8 KB
/
Mini Game Project(RPSLS).py
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
"""
Implementing RPSLS for Practice Project
"""
import random
def name_to_number(name):
"""
Take string name as input (rock-Spock-paper-lizard-scissors)
and returns integer (0-1-2-3-4)
"""
if name=='rock':
return 0
elif name=='Spock':
return 1
elif name=='paper':
return 2
elif name=='lizard':
return 3
elif name=='scissors':
return 4
def number_to_name(number):
"""
Take an integer as input (0-1-2-3-4)
and returns string name (rock-Spock-paper-lizard-scissors)
"""
if number == 0:
return 'rock'
elif number == 1:
return 'Spock'
elif number == 2:
return 'paper'
elif number == 3:
return 'lizard'
elif number == 4:
return 'scissors'
else:
print("Enter number in range")
def rpsls(player_choice):
"""
Takes player choice (rock-Spock-paper-lizard-scissors)
and then returns the number (0-1-2-3-4) for the particular choice
"""
if player_choice=='rock':
player_number= name_to_number(player_choice)
elif player_choice=='Spock':
player_number= name_to_number(player_choice)
elif player_choice=='paper':
player_number= name_to_number(player_choice)
elif player_choice=='lizard':
player_number= name_to_number(player_choice)
elif player_choice=='scissors':
player_number= name_to_number(player_choice)
else:
print("Player's input is not correct")
#generating random number for computer
#then converting the number generated to the following name
comp_number=(random.randrange(0,5))
comp_choice= number_to_name(comp_number)
#computing the diff between comp_number and player number
#giving out only postive diff
diff= (player_number-comp_number)%5
#if the diff is 0 then it's a tie
#if 1 or 2 then player wins
#if it's 3 or 4 then computer wins
if diff == 0:
print(name,"chooses",player_choice)
print("Computer chooses",comp_choice)
print(name,"and computer tie!")
print()
elif diff == 1:
print(name,"chooses",player_choice)
print("Computer chooses",comp_choice)
print(name," wins!")
print()
elif diff == 2:
print(name,"chooses",player_choice)
print("Computer chooses",comp_choice)
print(name," wins!")
print()
else:
print(name,"chooses",player_choice)
print("Computer chooses",comp_choice)
print("Computer wins!")
print()
name=input("Your name:- ")
print(name,"chooses:-",end='')
choice=input()
print()
rpsls(choice)