import random
######################################################
def get_any(category):
return random.sample(category, 1)[0]
#################################################################333
def list_of_alphabets(already_tried):
alphabets=[chr(i) for i in range(ord('a'), ord('z')+1)]
d = list(set(alphabets) - set(already_tried))
d.sort()
print"list of alphabets is :", d
def get_entities(fn):
return open('animals.txt').read().split()
########################################################
## RETURNS GUESSED WORD ##
def guess(word,masked_word,c):
to_return=""for i in range(len(word)):
if(word[i]==c):
to_return=to_return+c
else:
to_return=to_return+masked_word[i]
return to_return
##########################################################
def mask(word):
return"-" * len(word)
########################################################3
## INPUT GUESS LETTER FROM USER ##
def get_guess(already_tried):
c=str(raw_input("Enter your next guess: "))
while(c in already_tried):
print "you have already entered this, Enter another one "
c=str(raw_input("Enter your next guess: "))
return c
########################################################
## INTERFACE ##
def draw_interface(missed,mask_word,guessed, already_tried):
draw_hangman(missed)
print "Guessed: ",guessed
print mask_word
list_of_alphabets(already_tried)
###########################################################
## HANGMAN IMAGES ##
def draw_hangman(tri):
hangman=["""
############
## !
##
##
##
##
##
##
=======""","""
############
## !
## (@_@)
##
##
##
##
##
##
========""","""
############
## !
## (@_@)
## ( )
##
##
##
##
##
========""","""
############
## !
## (@_@)
## <( )>
##
##
##
##
##
========""","""
############
## !
## (~_~)
## <( )>
## _/ \_
##
## HANGED !!!
##
##
========"""]
print hangman[tri]
print 4-tri,"tries left"
###################################################################
## PROGRAM BODY ##
animals=['elephant',"monkey","owl","peacock","Tigress"]
fruits=["apple","orange","peach","banana","watermelon"]
country=["pakistan","england","iran","america","australia"]
city=["islamabad","sydney","london","carmel","lahore"]
wtp=True
while(wtp):
already_tried = []
print "choose a category : "
category=str(raw_input(" Animal=a , Fruit=f , Country=c , city=t \n"))
if(category=="a"):
word = get_any(animals)
elif(category=="f"):
word=get_any(fruits)
elif(category=="c"):
word="pakistan"else:
word="london"
missed=0
mask_word=mask(word)
guessed=[ ]
while(missed<=4):
draw_interface(missed,mask_word,guessed, already_tried)
if(missed!=4):
c=get_guess(already_tried)
already_tried.append(c)
if(word.count(c)>0):
mask_word=guess(word,mask_word,c)
else:
guessed.append(c)
missed=missed+1
if(word==mask_word):
print " YOU WON !!!"break
print word
choice=str(raw_input("would you like to play again y/n :"))
while(choice!='y' and choice!='n'):
choice=str(raw_input("PLEASE ENTER 'y/n' ONLY : "))
if(choice=="n"):
wtp=False
#####################################################################