isinstance() Type check

Last updated: 2026-09-22

isinstance() Type check

isinstance(obj, classinfo) checks whether obj is an instance of classinfo (or subclass); classinfo may be a tuple.

CategoryBuilt-in Functions
KindBuilt-in Function
Python Versionall

📝 Syntax

isinstance(object, classinfo)

⚙️ Parameters

object RequiredThe object to check.
classinfo RequiredA type, or a tuple of types (union check).

Returns:True if object is an instance of classinfo (or any type in it).

💥 Raises

▶ Example

Edit the code, press Run, and see the result in the output panel:

Output:

True
True
False
More case studies coming soon — check back later.

❓ FAQ

QWhat is the difference between isinstance(x, int) and type(x) == int?
Aisinstance accounts for inheritance (a subclass instance also returns True); type(x) == int requires the exact type. Usually isinstance is the more flexible choice.
QWhat does isinstance(True, int) return?
AIt returns True because bool is a subclass of int. To distinguish booleans from integers, additionally check type(x) is bool.
QCan the second argument hold multiple types?
AYes, pass a tuple: isinstance(x, (int, float)) returns True if either matches. Passing a non-type (or non-tuple-of-types) as classinfo raises a TypeError.
QCan isinstance check interfaces or abstract types?
AYes, it works with abstract base classes, e.g. isinstance(x, Iterable) or isinstance(x, collections.abc.Sequence), which is more robust than checking concrete types.
Web-Tutorial.com

Web-Tutorial Tech Team

A team of developers maintaining programming tutorials. Each tutorial is written and reviewed by developers with expertise in that field. We work to keep our content accurate and reliable — if you spot an issue, please let us know.

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏