Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
number был метод .as_integer_ratio() чтобы код работал, а с fence придётся обязательно наследоваться от float, иначе ругнётся.hasattr('as_integer_ratio')). Наследоваться от float — это пожалуй, еще хуже. def format(self, number):
if hasattr(number, 'as_integer_ratio'):
return '%i/%i' % number.as_integer_ratio()
else:
#?????
float почему-то не вижу ничего плохого :-\if type(number) is not float:
raise ArgumentError(...)
~/django ⭠ master $ ack-grep 'raise TypeError' . | wc -l
157@checktypes
def test(a:int, b:str) -> int:
return int(a * b)
PyFence: верификация типов для Python