Isinstance python что это?
Ментор сказал что проверять типы это моветон и есть утиная типизация, я половину не понял. У него 15 лет в проде, спорить смысла нет. Но в 3 задании у меня падает именно на этом.
Ваш вопрос
Ментор сказал что проверять типы это моветон и есть утиная типизация, я половину не понял. У него 15 лет в проде, спорить смысла нет. Но в 3 задании у меня падает именно на этом.
— isinstance(x, int) — проверка, относится ли x к типу int, вернет True или False. — Главное отличие от type(x) == int: isinstance понимает наследование классов. Если у тебя есть свой класс, унаследованный от другого, isinstance скажет True для обоих типов сразу, а сравнение через type соврет и скажет False там, где по смыслу должно быть True. — Можно передать сразу пачку типов кортежем: isinstance(x, (int, float, str)), вернет True, если x подходит хотя бы под один из перечисленных типов. — Булево значение True или False в питоне технически тоже int, поэтому isinstance(True, int) неожиданно для новичков вернет True, это особенность языка, а не баг.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
v4-pro
v4-pro
Isinstance python что это?
isinstance(x, тип) проверяет тип объекта с учетом наследования классов, в отличие от прямого сравнения через type(x) == тип.