-
Notifications
You must be signed in to change notification settings - Fork 0
/
Hangman_Game.py
108 lines (88 loc) · 4.34 KB
/
Hangman_Game.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
107
108
# -*- coding: utf-8 -*- #Κωδεικοποίηση τύπου utf-8
from random import
player_score=0 #σκορ του χρήστη=0
computer_score=0 #σκορ του κομπιούτερ=0
start()
def hangman(hangman): #ορίζουμε την εντολή hangman
graphic=[ #τύποι γραφικών
"--------
| |
|
|
|
|
"
"--------
| |
| Ο
|
|
|
"
def start(): #ορίζουμε τι θα κάνει η εντολή ξεκίνα
print "Ελα να παίξουμαι κρεμάλα"
print "Eίσαι έτοιμος; Ξεκινάμε"
while game():
pass
score()
#όταν το παιχνίδι σταματίσει εμφάνισε το σκορ
def game(): #ορίζουμε απο τι θα αποτελίτε η εντολή παιχνίδι
dictionary=["gnu","kernel","linux","unbuntu"] #λεξικό
word=choice(dictionary) #η λεξη που θα εμφανίση ειναι τυχέα επιλογή απο το λεξικό μας
word_length=len(word) #το μάκρος της λέξης =γραμές της λέξης
clue=word_length * ["_"] #το κλού = με το μάκρος της λέξης * _
tries=8 # έχει συνολικά 8 προσπάθειες
letters_tried= " " # γράμματα που έδωσε
guesses=0 # ματεψιες
letters_right=0 # σωστά γράμματα
letters_wrong=0 # λάθος γραμματα
global computer_score , player_score
def guess_letter(): #ορίζουμε την εντολή γραμματα που μάντεψε
print #τα εμφανίζει
letter=raw_input("Δωσε γράμμα") # του λέει να δώσει γράμμα
letter.strip() #να αφαιρέσει το κενώ πριν ή μετα το γράμμα που έδωσε ο χρήστης
letter.lower() #να κανει ολα τα γράμματα που έδωσε ο χρήστης μικρά
word.lower #να μετατρέψει τις λέξεις σε μικρά γράμματα
retuern letter #να επιστρέψει στην λέξη
While (letters_wrong!=tries) and #Αμα το γράμμα που έδωσε είναι λάθος δεν ισούτε με τις 8προσπάθεις τότε
("",join (clue)!=word): #τοτε βάλτην στο κλού
letter=guess_letter() #το γράμμα = με τα γράμμα που μέντεψε
if len(letter==1) and #ελένχει αν έδωσε μόνο ένα γράμα
letter.isalpha(): #και ελένχει εαν το γράμμα που έδωσε είναι μέσα στο αλφάβητο
if letters_tries.fing(letter)!=1: #εαν το γράμμα που εδωσε, το έχει ξανα δωσει
print"το έδωσες αυτο ξανα" ,letter #εμφανισε οτι ..... , και το γραμμα αυτο
else: #αλλιος
letter_tried=letters_tries + letter #το κουτι με τα γραμματα που εδωσε ο χρήστης=με όλα letters που εδωσε + το τελευταίο
first_index_index=-1:
letter_wrong+=1 #αμα εδωσε λαθος γράμμα +1 σταα λαθος
print"έδωσες λάθος γράμμα"
else:
print"βρίκες ένα γράμμα" ,letter
for i in range(word_lenght) #για i στο πεδίο(μακρος της λέξης)
if letter=word[i]: #εάν το γράμμα =με την λέξη i
clue[i]=letter #το στοιχίο i = με το γράμμα
else:
print"επελεψε αλλο γραμμα"
hangman(letters_wrong)
print" ".join(clue)
print"δοκιμασες αυτα τα γράμματα" ,letters_tried #εμφάνισε οτι .... , και τα γράματα που εχει δοκιμάσει
if letters_tries==tries: #εαν τα οι προσπαθειες που εκανε δίνοντας γράμμα= με με τις 8 λάθος προσπάθεις που έχει
print"έχασες φίλε" #εμφάνισε έχασες
computer_score+=1 #σκορ κομπιούτερ +1
break #σταματα
if "" join(clue)==word:
print"Νίκησες φίλε"
player_score+=1 #σκορ παίχτη +1
break #σταματα
return play_again() #επεστρεψε στην κατάσταση παίξε ξανα
def play_again():
answer=raw input("θες να παίξεις ξανα ;Ν/Ο")
if answer in("N","n","nai"): #εαν ο χρήστης δώσει κάτι απο αυτα
return answer
else: #αλλιος
print"Σε ευχαριστω που παίξαμε".
def score():
global player_score, computer_score
print Παίκτης ,player_score
print PC ,computer_score
return