Skip to content

RajasekharGuptha/Python-Classes-and-Inheritance-Coursera

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 

Repository files navigation

This is code for Python Classes and Inheritance Courser's course Final Project Wheel Of Fortune

VOWEL_COST = 250
LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
VOWELS = 'AEIOU'

class WOFPlayer():
    def __init__(self, initName):
        self.name = initName
        self.prizeMoney = 0
        self.prizes = []
    def goBankrupt(self):
        self.prizeMoney = 0
    def addPrize(self, prize):
        self.prizes.append(prize)
    def addMoney(self,amt):
        self.prizeMoney = self.prizeMoney + amt
    def __str__(self):
        return "{} ($ {})".format(self.name,self.prizeMoney)
    
class WOFHumanPlayer(WOFPlayer):
    def getMove(category, obscuredPhrase, guessed):
        input_prompt = input(self.name + "has $"+ str(self.prizeMoney)+ "/n" + ", Category:" + category + "/n" + ", Phrases:" + "/n" + obscuredPhrase + "/n" + ", Guessed:" + guessed + "/n" + "Guess a letter, phrase, or type 'exit' or 'pass':") 
        print(input_prompt) 
    
    

class WOFComputerPlayer(WOFPlayer):
    SORTED_FREQUENCIES = 'ZQXJKVBPYGFWMUCLDRHSNIOATE'
    prizemoney = 0
    def __init__(self, name, difficulty):
        self.name = name
        self.difficulty = difficulty
        self.prizeMoney = 0
        self.prizes = []

    def smartCoinFlip(self):
        if random.randint(1, 10) > self.difficulty:
            return True
        else: 
            return False

    def getPossibleLetters(self, guessed):
        possible_letters = []
        for char in LETTERS:
            if char in VOWELS and self.prizeMoney < 250:
                continue
            if char not in guessed:
                possible_letters.append(char)
        return possible_letters

    def getMove(self, category, obscuredPhrase, guessed):
        list = self.getPossibleLetters(guessed)
        smartCoinResult=self.smartCoinFlip()
        if list == []:
            return 'pass'
        else:
            if smartCoinResult==True:
                for l in self.SORTED_FREQUENCIES:
                    if l in list:
                        return l
            elif smartCoinResult==False:
                return random.choice(list)

Issues..?

Report Issue

Contact

Mail
Github
Medium

About

Coursera Course Name : Python Classes and Inheritance

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published