Default Get¶
Sourcery refactoring id: default-get
¶
Description:¶
Simplify dictionary access by using the default get
method
Before:¶
def pick_hat(available_hats: Dict[Label, Hat]):
if self.favourite_hat in available_hats:
hat_to_wear = available_hats[self.favourite_hat]
else:
hat_to_wear = NO_HAT
return hat_to_wear
After:¶
def pick_hat(available_hats: Dict[Label, Hat]):
hat_to_wear = available_hats.get(self.favourite_hat, NO_HAT)
return hat_to_wear
Explanation:¶
We often want to pick something from a dictionary if the key is present, or use a default value if it isn't.
A useful shortcut is that Python dictionaries have a get()
method which lets
you set a default value using the second parameter.
This has slimmed the code down and removed some duplication. A point to note is
that if you don't pass in a default value to get()
it will use None
.