پایتون (زبان برنامه‌نویسی)
دستور زبان > نوع دهی

پایتون از نوع دهی اردکی استفاده می‌کند. محدودیت تایپ در زمان کامپایل چک نمی‌شود؛ بنابراین عمل گرهای روی یک شیء ممکن است شکست بخورند، به این مفهوم که شیء داده شده از یک تایپ مناسب نیست. با اینکه اجباری در تایپ دهی ایستا نیست. نوع دهی پایتون نیرومند است؛ به همین دلیل اعمالی که به خوبی تعریف نشده باشند را منع می‌کند؛ مانند جمع کردن یک متغیر رشته با عدد.
پایتون به برنامه نویسان اجازه می‌دهد با استفاده از کلاس، نوع‌های دلخواه خودشان را تعریف کنند. نمونه‌های جدید هر کلاس با فراخوانی آن کلاس ساخته می‌شوند؛ مثلاً SpamClass() یا EggsClass() و خود کلاس‌ها نمونه‌هایی از متاکلاس type هستند.
پایتون قبل از نسخهٔ ۳٫۰ دو نوع کلاس داشت یکی شیوهٔ قدیم old-style و دیگری شیوهٔ جدید new-style. نحو هر دو مشابه است تفاوت در این است که کلاس object مستقیماً به ارث برسد یا نه. تمام کلاس‌های شیوهٔ جدید object را به ارث می‌برند و نمونه‌ای از type هستند)
| تایپ | تغییرپذیری | توصیف | مثال نحو |
| --- | --- | --- | --- |
| ellipsis | تغییرناپذیر | ایندکس در آرایه نام‌پای | ... Ellipsis |
| NoneType∗ | تغییرناپذیر | یک شیء که نشان دهندهٔ وجود نداشتن مقدار است و در زبان‌های دیگر با نام null شناخته می‌شود (اشاره‌گر هیچ‌مقدار) | None |
| NotImplementedType∗ | تغییرناپذیر | یک مکان نگهدارنده که می‌تواند از طریق اپراتورهای دارای بار اضافی برگردانده شود تا انواع عمل پشتیبانی نشده را نشان دهد. | NotImplemented |
| bool | تغییرناپذیر | فقط می‌تواند دو مقدار به خود بگیرد: درست(True) یا نادرست(False) | True False |
عدد: عدد
| int | تغییرناپذیر | عدد صحیح | 42 |
| long | تغییرناپذیر | وقتی ذخیره کردن یک عدد صحیح سر ریز داشته باشد، با دقتی نامحدود Long بسط خواهد یافت (تنها در پایتون ۲) | 3457876312345678632235674225567773487L |
| float | تغییرناپذیر | عدد اعشاری | 3.1415927 |
| complex | تغییرناپذیر | عدد مختلط با عدد حقیقی و قسمت موهومی | 3+2.7j |
دنباله: دنباله
| bytearray | تغییرپذیر | دنباله‌ای از بایت‌ها | bytearray(b'Some ASCII') bytearray(b"Some ASCII") bytearray([119, 105, 107, 105]) |
| bytes | تغییرناپذیر | دنباله‌ای از بایت‌ها | b'Some ASCI' b"Some ASCII" bytes([119, 105, 107, 105]) |
| list | تغییرپذیر | لیستی از اشیاء که ترتیب خاصی دارند و آن اشیاء می‌توانند تایپ‌های مختلفی باشند. | [4.0 ,'string', False] |
| str | تغییرناپذیر | رشته‌ای از کاراکترها | 'Wikipedia' "Wikipedia"  """Spanning multiple lines"""  |
| tuple | تغییرناپذیر | مثل listمنتها تغییرناپذیر | (4.0 ,'string', True) |
مجموعه: مجموعه
| frozenset | تغییرناپذیر | مجموعه (مجموعه از اشیاء که بدون ترتیب تکرار هستند) در صورت هشبل بودن می‌تواند انواع مختلفی از اشیاء را همزمان بپذیرد. | frozenset([4.0, 'string', True]) |
| set | تغییرپذیر | مثل frozenset منتها تغییرپذیر | {4.0 ,'string', True} |
نگاشت: نگاشت
| dict | تغییرپذیر | گروهی از جفت‌های کلید و مقدار | {"aboli.ig":"instagram"} |
نوع‌های قابل فراخوانی: نوع‌های قابل فراخوانی
| range | تغییرناپذیر | دنباله‌ای از اعداد است که معمولاً از آن برای حلقه با تعداد مشخصی از تکرار استفاده می‌شود | range(1, 10) range(10, -5, -2) |
| generator | تغییرناپذیر | توابع با سرعت و حجم کمتر از list | (f for f in range(10)) |
همه کلاس‌ها در …: همه کلاس‌ها در …
| type | تغییرناپذیر | کلاس‌ها خودشان نمونه‌هایی از کلاس type هستند (خودش یک نمونه از خودش است). | type(7)  type('wiki') |
^ مستقیما از طریق نام قابل دسترسی نیست.
پایتون همچنین به برنامه‌نویس‌ها اجازه می‌دهد که تایپ دلخواه خود را تعریف کنند. این کار با استفاده از کلاس‌ها امکان‌پذیر است و اغلب برای شیء گرایی در برنامه‌نویسی استفاده می‌شود. نمونه‌های جدید از کلاس‌ها با صدا زدن کلاس ساخته می‌شوند و کلاس‌ها خودشان نمونه‌هایی از کلاس type هستند (خودش یک نمونه از خودش است).