Question: import random class WOFPlayer: def _ _ init _ _ ( self , name ) : self.name = name self.prizeMoney = 0 # Starting with

import random
class WOFPlayer:
def __init__(self, name):
self.name = name
self.prizeMoney =0 # Starting with no prize money
def addMoney(self, amount):
self.prizeMoney += amount
def __str__(self):
return f'{self.name}: ${self.prizeMoney}'
class WOFComputerPlayer(WOFPlayer):
SORTED_FREQUENCIES = 'ZQXJKVBPYGFWMUCLDRHSNIOATE'
def __init__(self, name, level):
super().__init__(name)
self.level = level # Difficulty level for the computer player
def smartCoinFlip(self):
return random.randint(1,10)<= self.level
def getPossibleLetters(self, guessed):
VOWELS = 'AEIOU'
VOWEL_COST =250
all_letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
possible_letters =[letter for letter in all_letters if letter not in guessed]
# If the player doesn't have enough prize money, they can't guess vowels
if self.prizeMoney < VOWEL_COST:
possible_letters =[letter for letter in possible_letters if letter not in VOWELS]
return possible_letters
def getMove(self, category, obscuredPhrase, guessed):
possible_letters = self.getPossibleLetters(guessed)
if not possible_letters:
return 'pass'
if self.smartCoinFlip():
for letter in self.SORTED_FREQUENCIES:
if letter in possible_letters:
return letter
return random.choice(possible_letters)

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!