Если писать так:
if type(x) == str:
print("Это строка")
это может работать, но ломается на наследниках
str.Правильнее использовать
isinstance(). Он учитывает наследование и лучше согласуется с полиморфизмом.if isinstance(x, str):
print("Это строка")
Такой вариант сработает и для
str, и для его подклассов.Итог:
type(x) == str годится только для простых случаев, но хрупкий. isinstance(x, str) — более устойчивый и корректный вариант почти всегда.👉 @PythonPortal
