Thanks for the response Roman!
Yeah, the case you provided is similar to using a Boolean implicitly to represent an enum or categorical value.
Yep, Python is strongly dynamically typed. I should have written and emphasized explicit static type checking, more relevant when perusing code like reading through function signatures especially and less about running the code. This would have been more precise and clear.