Choose Pokemon - codepath/compsci_guides GitHub Wiki
Unit 5 Session 1 (Click for link to problem statements)
U-nderstand
Understand what the interviewer is asking for by using test cases and questions about the problem.
- What happens when the
choose()
method is called on a Pokemon that is not caught?- The method should indicate that the Pokemon is still wild.
P-lan
Plan the solution with appropriate visualizations and pseudocode.
General Idea: Add a method choose()
to the Pokemon class that checks the caught status and prints a message based on whether the Pokemon is caught or not.
1) Add a method `choose` to the class.
2) In `choose`, check if the Pokemon `is_caught`.
3) If caught, print "<Pokemon name> I choose you!".
4) If not caught, print "<Pokemon name> is wild! Catch them if you can!".
⚠️ Common Mistakes
- Forgetting to use the f-string for dynamic text output in Python.
- Misunderstanding the condition for checking
is_caught
status.
I-mplement
class Pokemon():
def __init__(self, name, types):
self.name = name
self.types = types
self.is_caught = False
def print_pokemon(self):
print( {
"name": self.name,
"types": self.types,
"is_caught": self.is_caught
})
def catch(self):
self.is_caught = True
def choose(self):
if self.is_caught:
print(f"{self.name} I choose you!")
else:
print(f"{self.name} is wild! Catch them if you can!")