پایتون (زبان برنامه‌نویسی)
پایتون یک زبان برنامه‌نویسی شیءگرا، تفسیری، سطح بالا، و همه منظوره است، که خیدو فان روسوم آن را طراحی کرده‌است، و اولین بار در سال ۱۹۹۱ منتشر شده‌است. فلسفه اصلی طراحی پایتون «خوانایی بالای کد» است و نویسه‌های فاصله خالی در آن معنادار هستند و مکرر استفاده می‌شوند. ساختار زبانی و دیدگاه شیءگرا در پایتون به گونه‌ای طراحی شده‌است که به برنامه‌نویس امکان نوشتن کد منطقی و واضح (بدون ابهام) را برای پروژه‌های کوچک و بزرگ می‌دهد.
کلمات کلیدی و اصلی این زبان به‌صورت حداقلی تهیه شده‌اند و در مقابل کتابخانه‌هایی که در اختیار کاربر است بسیار وسیع هستند.
بر خلاف برخی زبان‌های برنامه‌نویسی رایج دیگر که بلاک‌های کد در آکولاد تعریف می‌شوند (به‌ویژه زبان‌هایی که از نحو زبان سی پیروی می‌کنند) در زبان پایتون از نویسه فاصله و جلو بردن متن برنامه برای مشخص کردن بلاک‌های کد استفاده می‌شود. به این معنی که تعدادی یکسان از نویسه فاصله در ابتدای سطرهای هر بلاک قرار می‌گیرند و این تعداد در بلاک‌های کد درونی‌تر افزایش می‌یابد. بدین ترتیب بلاک‌های کد به صورت خودکار ظاهری مرتب دارند.
در پایتون مدل‌های مختلف برنامه‌نویسی (از جمله شی‌گرا و برنامه‌نویسی دستوری و تابع محور) را پشتیبانی می‌شود و برای مشخص کردن نوع متغیرها از یک سامانهٔ پویا استفاده می‌شود.
این زبان از زبان‌های برنامه‌نویسی مفسر بوده و به‌صورت کامل یک زبان شیءگرا است که در ویژگی‌ها با زبان‌های تفسیری پرل، روبی، اسکیم، اسمال‌تاک و تی‌سی‌ال مشابهت دارد و از مدیریت خودکار حافظه استفاده می‌کند.
زبان پایتون ۲ رسماً از سال ۲۰۲۰ دیگر پشتیبانی نمی‌شود و پایتون ۲٫۷٫۱۸ آخرین نسخهٔ پایتون ۲٫۷ و همچنین پایتون ۲ است و ازاین به بعد دیگر هیچ وصلهٔ امنیتی‌ای یا بهبود دیگری در این نسخه داده نخواهد شد. با پایان پشتیبانی از پایتون ۲ فقط پایتون ۳ نسخه‌های بعدی آن پشتیبانی خواهند شد.
پایتون پروژه‌ای آزاد و متن‌باز توسعه‌یافته‌است و توسط بنیاد نرم‌افزار پایتون مدیریت می‌گردد.
پایتون اواخر دهه ۱۹۸۰ (میلادی) در مؤسسه ملی تحقیقات ریاضی و رایانه (CWI) در کشور هلند توسعه داده شد.
هدف خیدو از توسعهٔ پایتون ایجاد جانشینی برای زبان برنامه‌نویسی ای‌بی‌سی بود که قابلیت پردازش استثناها را داشته باشد.پیاده‌سازی پایتون در دسامبر ۱۹۸۹ آغاز شد. خیدو طراح اصلی پایتون است و نقش مداوم او در تصمیم‌گیری پیرامون اهداف پایتون، باعث شد که انجمن پایتون به او لقب دیکتاتور خیرخواه جاویدان را بدهد. فان روسوم تا ۱۲ ژوئیه ۲۰۱۸ مسئولیت رهبری پروژهٔ پایتون را به عهده داشت. در آن زمان او اعلام کرد که از مسئولیت خود به عنوان دیکتاتور خیرخواه جاویدان کناره‌می‌گیرد. در حال حاضر، او مسئولیت رهبری پروژهٔ پایتون را به یک انجمن راهبری پنج عضوی که خود نیز یکی از اعضای آن است داده‌است.در ژانویهٔ ۲۰۱۹ توسعه دهندگان فعال هستهٔ پایتون نیک کولان، برت کانون، بری وارساو، کارول ویلینگ، و خیدو فان روسوم را به عنوان اعضای انجمن انتخاب کردند.از آن زمان خیدو فان روسوم از نامزدی برای انجمن ۲۰۲۰ صرف نظر کرده‌است.
پایتون ۲٫۰ در ۱۶ اکتبر ۲۰۰۰ با ویژگی‌های مهم و جدید بسیاری منتشر شدکه شامل بازیافت حافظه با قابلیت شناسایی دور و پشتیبانی از یونیکد بود.
پایتون ۳٫۰ در ۳ دسامبر ۲۰۰۸ منتشر شد این نسخه بازنویسی عمده‌ای از نسخهٔ قبل بود که سازگاری عقبرو را شکسته بود.بسیاری از ویژگی‌های عمدهٔ آن به پایتون 2.6.x و 2.7.x پیش‌انتقال داده شدند. نسخه‌های منتشر شده از پایتون ۳ ابزار codice_1 را دارند که کار ترجمهٔ کد پایتون ۲ به پایتون ۳ را (حداقل تا حدودی) انجام می‌دهد.
از سال ۲۰۱۵ مقرر شد نسخه‌های پایتون ۲٫۷ تنها تا سال ۲۰۲۰ پشتیبانی شوند.
فهرست برخی از تغییرات عمده پایتون ۳٫۰:  فراهم شد.http_code = 418 match http_code: پایتون یک زبان برنامه‌نویسی چند پارادایمی است به طوریکه هم شیء گرایی و برنامه‌نویسی ساخت‌یافته را کاملاً پوشش می‌دهد و هم بسیاری از خصوصیات پایتون برنامه‌نویسی جنبه گرا و تابعی (مثل پشتیبانی از فرا برنامه‌نویسی) را پوشش می‌دهد. پارادایم‌های برنامه‌نویسی دیگر نیز به وسیلهٔ افزونه‌ها پشتیبانی شده‌اند. مثل برنامه‌نویسی منطقی.
پایتون از تایپ پویا و ترکیبی از شمارش مرجع و یک حلقه کشف و بازیافت قسمت‌های هدر رفته حافظه برای مدیریت حافظه، استفاده می‌کند. یک ویژگی مهم پایتون تحلیل نام پویا است که روش‌ها و نام متغیرها را در طول اجرای برنامه به هم ملحق می‌کند.
طرح پایتون به پشتیبانی محدود برای برنامه‌نویسی تابعی به سُنَت زبان لیسپ، ارائه شد. به همین منظور پایتون دارای توابع codice_2, codice_3, و codice_4 و عبارت‌های لیست، دیکشنری، مجموعه و جنراتور است. اگرچه، تشابه‌های عمده‌ای بین پایتون و زبان خانواده لیسپ وجود دارد. این کتابخانه دو ماژول دارد (ایترتولز و فانکتولز) که ابزارهای تابعی را با اقتباس از هسکل و استاندارد ام‌ال پیاده‌سازی می‌کند.
فلسفهٔ اصلی پایتون در سند ذن پایتون "پی‌ئی‌پی ۲۰" خلاصه شده‌است که شامل گزینه‌های زیر است:
به جای اینکه تمام عملکرد پایتون در هستهٔ آن متمرکز باشد طوری طراحی شده‌است که به خوبی از افزونه‌ها پشتیبانی کند. این ویژگی پایتون که آن را محبوب کرده‌است، راهی برای اضافه کردن ای‌پی‌آی به نرم‌افزارهای موجود بوده‌است. ایدهٔ فان روسوم از زبانی با هستهٔ کوچک و کتابخانهٔ استاندارد بزرگ با مفسر افزونه‌پذیر، ریشه در سرخوردگی او از زبان ای‌بی‌سی دارد.
یکی از اهداف پایتون داشتن نحو ساده‌تر و منظم‌تر است؛ به همین دلیل برای روش‌شناسی کد فقط یک انتخاب در مقابل توسعه‌دهنده قرار می‌دهد. روش پایتون در مقابل روش پرل (بیش از یک روش برای انجام آن وجود دارد) قرار دارد و فلسفهٔ طراحی آن چنین است «باید یک راه – و ترجیحاً فقط یک راه - آشکار برای انجام هر کاری وجود داشته باشد.». الکس مارتلی که نویسندهٔ کتاب‌های مربوط به پایتون است. می‌نویسد: «در فرهنگ پایتون «هوشمندانه» توصیف کردن چیزی ستایش به‌شمار "نمی‌رود".»
هدف دیگر طراحی زبان آسان کردن توسعه‌پذیری است. ماژول‌هایی که تازه ساخته شده‌اند، به‌سادگی در C و C++ نوشته می‌شوند. پایتون همچنین می‌تواند به عنوان زبان توسعه برای ماژول‌ها و کاربردهای موجود که به برنامه واسط قابل برنامه‌ریزی نیاز دارد، استفاده شود. توسعه دهندگان پایتون سعی کردند از بهینه‌سازی زود هنگام اجتناب کنند و وصله‌های غیر حساس سی‌پایتون که باعث افزایش سرعت نهایی می‌شد را اضافه نکردند. هرگاه برای برنامه‌نویس پایتون سرعت اهمیت داشت، او می‌تواند توابع زمانبر را به ماژول‌های افزونه‌ای ببرد و آن‌ها را به زبان‌هایی مثل سی بنویسد یا از پای‌پای استفاده کند که نوعی کامپایلر درجا است. از سایتون که اسکریپت پایتون را به سی ترجمه می‌کند نیز می‌توان استفاده کرد.
به کاربران و علاقه‌مندان پایتون مخصوصاً آنان که باتجربه و آگاه به حساب می‌آیند پایتونیستا گفته می‌شود.
این زبان در مقایسه با زبان‌های دیگر، دارای سرعت کمتری است. این زبان سطح بالایی است و مانند زبان‌های C، رابطه خوبی با سخت‌افزار ندارد. کارهایی که نیاز به حافظه کوتاه مدت دارند را نمی‌توان برای زبان پایتون مناسب دانست. شما برای آموزش پایتون نیاز به یک منبع معتبر و رایگان نیز دارید که بتوانید به صورت جامع این زبان برنامه نویسی قدرتمند را بیاموزید.
یک واژه ابداعی رایج در انجمن پایتون، واژهٔ پایتونیک است که محدوده معنایی وسیعی را در رابطه با سبک برنامه‌نویسی در بر می‌گیرد. کدی پایتونیک است که از اصطلاحات پایتون به خوبی استفاده کرده باشد به طوری که شیوایی در زبان را نشان دهد و مطابق فلسفهٔ مینیمالیستی و خوانایی بالا در پایتون باشد. در مقابل کد آنپایتونیک کدی است که فهم آن مشکل است یا مثل رونویسی‌ای از زبان دیگری باشد.
نام پایتون از گروه کمدین بریتانیایی مانتی پایتون که سازندهٔ پایتون، خیدو فان روسوم، به آن علاقه‌مند بود، گرفته شده‌است. اشاره به مانتی پایتان در فرهنگ پایتون و کدهای آن به وفور دیده می‌شود؛برای مثال در پایتون spam and eggs، به جای فوبار به عنوان متغیرهای فرانحوی به کار می‌رود.در مستندسازی رسمی پایتون نیز به روال‌های مانتی پایتون اشاره می‌شود.
خوانایی بالا از اهداف زبان پایتون است؛ بنابراین طرح بندی آن مرتب و بدون حشو و زوائد است و اغلب از کلمات کلیدی انگلیسی استفاده می‌کند، در حالی که زبان‌ها دیگر از نقطه‌گذاری استفاده می‌کنند. پایتون نسبت به زبان‌های ساخت یافته سنتی، مثل C و پاسکال استثناءهای نحوی و موارد خاص کمتری دارد. و این اجازه را به برنامه نوسان می دهند که خلاقانه تر کدنویسی کنند و از تولید کد های طولانی پرهیز کنند، زیرا کد های طولانی می تواند سبب سنگین تر شدن برنامه ها در هنگام خروجی گرفتن نیز باشد.
پایتون برای جداکردن بلوک کد به جای استفاده کردن از آکولاد از تورفتگی فاصله خالی استفاده می‌کند. برای شروع بلوک کد یک پله تورفتگی را بیشتر می‌کنیم و برای اتمام آن یک پله بلوک کد را کمتر می‌کنیم. پس ساختار ظاهری برنامه نمایش دهندهٔ ساختار معنایی آن است. این ویژگی‌ای که به نام قاعدهٔ آف-ساید نیز شناخته می‌شود و در بعضی از زبان‌ها وجود دارد ولی در بیشتر زبان‌های برنامه‌نویسی وجود تورفتگی معنای خاصی نمی‌دهد.
حکم‌های پایتون شامل:
سی پایتون استمرار را پشتیبانی نمی‌کند و مطابق نظر خَودو فان روسوم هرگز نخواهد کرد. در ورژن‌های قبلی مولد تکرار کند بود چون اطلاعات تنها در یک جهت از مولد عبور می‌کردند.زبان پایتون دارای سه نوع متد می باشد:این متدها جز رایج ترین و قدرتمند ترین متد های زبان برنامه نویسی پایتون می باشند، این توابع از پارامتر self به عنوان اولین آرگومان در ورودی استفاده می کنند، جالب است بدانید که بدیهی ست که استفاده از سایر ورودی ها امکان پذیر است و با استفاده از self که به Instance کلاس اشاره می کند، دسترسی به سایر متد ها و attributes های کلاس امکان پذیر است.
این نوع از توابع با به کارگیری از دکوراتور داخلی (builtin) classmethod@ ایجاد (و شناخته) می شوند. کلاس متد پارامتر cls را به عنوان اولین آرگومان در ورودی می پذیرند (مثل حالت قبل استفاده از سایر ورودی ها نیز امکان پذیر است). cls به اشیای درون کلاس اشاره می کند و نه نمونه ساخته شده از آن، بنابراین Class method ها می توانند وضعیت کلاس را تغییر دهند.
این متد ها با استفاده از دکوراتور staticmethod@ ایجاد (و شناخته) می شوند. در ورودی این نوع متد ها پارامتر معناداری مانند cls یا self وجود ندارد اما مانند تمام متد ها امکان دریافت ورودی را دارند.
این متدهای کاربرد زیادی در برنامه نویسی پایتون ندارند و به جای آن ها می توان از module functions (توابعی که در یک ماژول دیگر قرار دارد، مثلا ماژول utils) استفاده کرد.
متدهای استاتیک نیز به کلاس ها محدود هستند اما نمیتوانند state کلاس یا نمونه ساخته شده از کلاس را تغییر دهند و تنها به داده هایی که به آنها دسترسی دارند محدود شده اند. در کل، متدهای استاتیک اطلاعاتی از state کلاس یا نمونه ساخته شده از کلاس ندارند. استاتیک متدها در حقیقت چیزی جز یک callable در یک کلاس نیستند که برای دسترسی به آن ها نیازی به نمونه سازی از کلاس نیست.
کاربرد متدهای استاتیک در مواقعی است که تابع وظیفه پردازش مجزایی از سایر فعالیت اعضای کلاس را بر عهده دارد و نیاز به بیشتر برای ایجاد متدهای کاربردی و یا محاسباتی است.
پایتون از نوع دهی ادکی استفاده می‌کند. محدودیت تایپ در زمان کامپایل چک نمی‌شود؛ بنابراین عمل گرهای روی یک شیء ممکن است شکست بخورند، به این مفهوم که شیء داده شده از یک تایپ مناسب نیست. با اینکه اجباری در تایپ دهی ایستا نیست. نوع دهی پایتون نیرومند است؛ به همین دلیل اعمالی که به خوبی تعریف نشده باشند را منع می‌کند؛ مانند جمع کردن یک متغیر رشته با عدد.
پایتون به برنامه نویسان اجازه می‌دهد با استفاده از کلاس، نوع‌های دلخواه خودشان را تعریف کنند. نمونه‌های جدید هر کلاس با فراخوانی آن کلاس ساخته می‌شوند؛ مثلاً codice_35 یا codice_36 و خود کلاس‌ها نمونه‌هایی از متاکلاس codice_37 هستند.
پایتون قبل از نسخهٔ ۳٫۰ دو نوع کلاس داشت یکی "شیوهٔ قدیم" "old-style" و دیگری "شیوهٔ جدید" "new-style". نحو هر دو مشابه است تفاوت در این است که کلاس codice_38 مستقیماً به ارث برسد یا نه. تمام کلاس‌های شیوهٔ جدید codice_38 را به ارث می‌برند و نمونه‌ای از codice_37 هستند)
مستقیما از طریق نام قابل دسترسی نیست.
پایتون همچنین به برنامه‌نویس‌ها اجازه می‌دهد که تایپ دلخواه خود را تعریف کنند. این کار با استفاده از کلاس‌ها امکان‌پذیر است و اغلب برای شیء گرایی در برنامه‌نویسی استفاده می‌شود. نمونه‌های جدید از کلاس‌ها با صدا زدن کلاس ساخته می‌شوند و کلاس‌ها خودشان نمونه‌هایی از کلاس codice_37 هستند (خودش یک نمونه از خودش است).
در پایتون می‌توان با ایجاد متغیرهایی کلاس‌های بالا را ذخیره کرد. برای اینکار باید نام متغیر را مساوی مقدار قرار دهید؛ یعنی: codice_42 که جی نام متغیر و ۲ مقدار متغیر است. برای آنکه از طریق خط فرمان مقدار را دریافت کنید، باید از codice_43 استفاده کنید که آن هم در یک متغیر ذخیره می‌شود: input('enter str:') پایتون ۲ به‌طور خودکار از عدد استفاده می‌کند اما پایتون ۳ از رشته به‌طور خودکار استفاده می‌کند. اگر می‌خواهید از کلاس‌هایی غیر از رشته استفاده کنید، باید از تبدیل‌گر استفاده کنید: int(input('enter age:')) اگر می‌خواهید چند متغیر را در یک‌خط بنویسید، باید ابتدا نام متغیرها و بعد مقادیر را بنویسید: f , g , h = 1 , 2 , 3 اگر می‌خواهید به چند متغیر یک مقدار را نسبت دهید، باید ابتدا نام متغیرها و بعد مقدار را بنویسید: a = b = c = d = 1
در صورت درست بودن به ما codice_57 و در غیر این صورت، codice_58 می‌دهد
در پایتون می‌توان با عملگرهای ریاضی، عمل‌هایی از جمله جمع، تفریق و ضرب و تقسیم را انجام داد: این عملگرها بر روی codice_74، codice_75 codice_76 و codice_77 کار می‌کنند.
همچنین عملگر codice_78 هم برای ادغام codice_79هادر پایتون ۳٬۹ اضافه شد. مثال: codice_80«ماژول» به انگلیسی (Module) به فایلی می گویند که دارای دستورها و تعاریف پایتون است. یک فایل ماژول حاوی کدهای پایتون، برای مثال Test.py، یک ماژول نامیده می‌شود؛ برای مثال بیان شده، نام ماژول «Test» است. از ماژول‌ها برای تکه تکه کردن برنامه‌ها به فایل‌های کوچک و با قابل مدیریت خیلی بهتر استفاده می‌شود. علاوه بر آن، ماژول‌ها قابلیت استفاده مجدد از کد را فراهم می‌کنند. کاربران می‌توانند به جای کپی کردن تعاریف در برنامه‌های گوناگون، توابع پر استفاده خود را تعریف و وارد کنند (ایمپورت). در ادامه، روش وارد کردن یک ماژول در پایتون آموزش داده خواهد شد.
برخی از کدها برای خلوت‌سازی پایتون، در ماژول‌ها وارد شده‌است.
برای وارد کردن ماژول به سه روش از codice_22 استفاده می‌شود:import  [as ] یا from  import * یا from  import  [as ][,  [as ]][, ...]
برای ساختن ماژول، ابتدا کلاس‌ها، توابع و متغیرهایی را در یک فایل ذخیره می‌کنیم و نام فایل را در codice_86 قرار می‌دهیم. (کد فایل را لازم نیست وارد کنید)
برنامهٔ برنامه «سلام، دنیا!» زیر، با استفاده از کتابخانه استاندارد و جریان‌های خروجی یک متن را به خروجی استاندارد ارسال می‌نماید print('Hello, world!')
n = int(input('Type a number, and its factorial will be printed: '))
if n < 0:
fact = 1
for i in range(2, n + 1):
print(fact) سی‌پایتون رویهٔ اصلی پایتون است که در نشست C در استاندارد C۸۹ نوشته شد ولی از چند ویژگی نشست C۹۹ نیز استفاده کرده‌است. سی‌پایتون برنامه‌های پایتون را به یک بایت‌کد میانی کامپایل می‌کند، تا بعد از آن ماشین مجازی آن را اجرا کند. سی‌پایتون با یک کتابخانه استاندارد بزرگ توزیع شده‌است، که به صورت مخلوطی از C و پایتون نوشته شده‌است. سی‌پایتون در ورژن‌های مختلف روی پلتفرم‌های زیادی کار می‌کند، مثل مایکروسافت ویندوز و بیشتر سیستم‌های پیشرفته یونیکس. استفاده و توسعه آن روی پایگاه‌های محرمانه مانند آمیب، در کنار پایگاه‌های متداول مانند یونیکس یا مکینتاش، به‌طور عمده در این نظر کمک شده‌است.
جایتون برنامه‌های پایتون را به کد بایت جاوا کامپایل می‌کند که بدین ترتیب می‌تواند با هر ماشین مجازی جاوا اجرا شود همچنین این امکان فراهم می‌شود که توابع کتابخانه‌ای کلاس جاوا از برنامه پایتون به کار گرفته شود. آیرون پایتون از همین شیوه برای اجرای برنامه‌های پایتون روی چارچوب دات‌نت استفاده می‌کند.
پای پای یک مفسر سریع پایتون ۲٫۷ و ۳٫۶ است. پای‌پای نوعی کامپایلر درجاست که باعث بیشتر شدن سرعت نسبت به سی‌پایتون می‌شود ولی در عوض از بسیاری از کتابخانه‌ها که به زبان سی نوشته شده‌اند نمی‌توان با آن استفاده کرد.
پایتون بدون پشته ، انشعابی از سی پایتون است که ریز برنامه‌ها را اجرا می‌کند و از پشته حافظه استفاده نمی‌کند. سی پایتون از قفل مفسر سراسری استفاده می‌کند تا وقتی برنامه پایتون بدون پشته، وابسته به سیستم عامل است و می‌تواند به صورت هم‌زمان اجرا شود، در هر لحظه فقط به یک زیر برنامه اجازه اجرا داده شود. پایتون برای استفاده در میکرو کنترلرها یا وظایف محدود دیگر پایگاه‌های مرجع، متناسب‌تر است. پیش‌بینی می‌شود که پایتون بدون پشته بتواند تقریباً روی همان پایگاهی که سی پایتون اجرا می‌شود، اجرا شود. پای‌پای نیز یک ورژن بدون پشته دارد.
میکرو پایتون و سیرکیوت پایتون پیاده‌سازی پایتون ۳ای هستند که برای ریزکنترل‌گر‌ها بهینه شده‌اند.
چندین برنامه در بسته مفسر پایتون با برنامه‌های کاربردی (یا آغازگر) وجود دارد که مستقلاً اجرا می‌شوند مانند یونیکس، لینوکس، ویندوز، آمیگااواس ۴ یا مک‌اواس ده. بسیاری از کتابخانه‌های سه قسمتی (و حتی بعضی از یک قسمتی‌ها) فقط روی ویندوز، لینوکس، بی‌اس‌دی و مک‌اواس ده موجود هستند.
کامپایلرهای درجای دیگری که هم‌اکنون پشتیبانی نمی‌شوند:
نوکیا در سال ۲۰۰۵ یک مفسر پایتون برای موبایل‌های سری ۶۰ با نام PyS۶۰ منتشر کرد که شامل بسیاری از ماژول‌های سی‌پایتون بود و همچنین ماژول‌های اضافه‌ای به منظور یکپارچه شدن با سیستم‌عامل سیمبیان نیز داشت. این پروژه به روز نگاه داشته می‌شد تا روی همه سکوهای مختلف اس ۶۰ اجرا شود. نوکیا ان۹۰۰ نیز از پایتون همراه با کتابخانهٔ ویجت‌های جی‌تی‌کی پشتیبانی می‌کرد.
چندین کامپایلر به زبان‌های سطح بالای شیء گرا وجود دارد خواه زبان مبدأ پایتون محدود نشده باشد خواه زیر مجموعه‌های محدود شدهٔ آن یا زبان‌های مشابه پایتون باشند:
توسعهٔ پایتون از طریق پی‌ئی‌پی PEP به معنای پروپوزال بهینه‌سازی پایتون انجام می‌شود که سازوکار اولیه برای مطرح کردن ویژگی‌های عمدهٔ جدید و جمع‌آوری ورودی جامعهٔ پایتون دربارهٔ مشکلات و مستندسازی طرح تصمیم‌گیری‌های پایتون است؛ برای نمونه سبک برنامه‌نویسی پایتون در پی‌ئی‌پی ۸ توضیح داده شده‌است. جامعهٔ پایتون و شورای مدیریتی پی‌ئی‌پی‌ها را بررسی می‌کنند. توسعهٔ این زبان متناظر با توسعهٔ پیاده‌سازی مرجع (سی‌پایتون) است. میلینگ لیست python-dev انجمن اولیه برای توسعهٔ این زبان است. مشکلات نرم‌افزاری آن در سایت ردیابی باگ روندآپ که در bugs.python.org میزبانی می‌شود مورد بحث قرار می‌گیرند.
تا سال ۲۰۱۷ توسعهٔ آن در مخزن نرم‌افزاری ای خود میزبان انجام می‌شد که از مرکوریال استفاده می‌کرد ولی از ژانویهٔ سال ۲۰۱۷ کد منبع پایتون به گیت‌هاب منتقل شد.
نسخه‌های رسمی سی‌پایتون به سه صورت جدا انتشار می‌یابند بسته به این که به کدام بخش از عدد نسخه افزوده می‌شود از هم متمایز می‌شوند:
پایتون یک کتابخانه استاندارد بزرگ دارد که از آن به عنوان یکی از بزرگ‌ترین توانایی پایتون یاد می‌شود، مشروط به اینکه ابزارهای از پیش نوشته شده، با بسیاری از وظایف سازگار باشد. ماژول‌های کتابخانه استاندارد می‌توانند به شیوه ماژول‌های نوشته شده در سی یا پایتون آرگومان دهی شوند. اخیراً کتابخانه‌های C++ به یک کتابخانه به نام Boost.Python رشد یافته‌است، برای ایجاد قابلیت همکاری بین C++ و پایتون. به دلیل تنوع گسترده در ابزارهای تولید شده توسط کتابخانه استاندارد، این کتابخانه با توانایی استفاده یک زبان سطح پایین ترکیب شده، مثل C و C++ که البته به عنوان واسط بین کتابخانه‌های دیگر است، پایتون می‌تواند یک واسط قوی بین زبان‌ها و ابزارها باشد.
کتابخانهٔ استاندارد با تعداد زیاد فرمت‌ها و پروتکل‌هایی که حمایت می‌کند (مانند ام‌آی‌ام‌ئی و اچ‌تی‌تی‌پی)، خصوصاً برای نوشتن علائم اینترنت مناسب است. پایتون همچنین ماژول‌هایی برای ایجاد واسط کاربر گرافیکی، اتصال به پایگاه داده رابطه‌ای، تولید اعداد شبه تصادفی، محاسبات با دقت دلخواه اعشاری، دستکاری عبارات با قاعده و آزمایش واحد دارد. بعضی از قسمت‌های کتابخانهٔ استاندارد در سند مشخصات توضیح داده شده‌اند. (مثل WSGI codice_87 که پیرو PEP 333 است) اما اکثریت ماژول‌ها این‌گونه نیستند. آن‌ها از طریق کدها، اسناد داخلی، و دنباله تست شان (اگر موجود باشد) تعیین می‌شوند. اگر چه، به دلیل اینکه کد پایتون اکثر کتابخانه‌های استاندارد، چندسکویی است، فقط ماژول‌های اندکی هستند که باید برای پیاده‌سازی‌های دیگر تغییر داده شوند یا مجدّداً نوشته شوند. در نوامبر 2019 (PyPI) مخزن رسمی برای نرم‌افزارهای شخص سوم پایتون بالغ بر ۲۰۰۰۰۰ پکیج دارد. پکیج‌های پایتون در زمینه‌های گوناگونی کاربرد دارند:
بیشتر پیاده‌سازی‌های پایتون (شامل سی پایتون، اولین پیاده‌سازی) می‌توانند مثل یک مفسر خط فرمان عمل کنند، برای زمانی که کاربر رشته شرط را وارد می‌کند و فوراً نتیجه را می‌پذیرد. خلاصه پایتون به عنوان یک برنامه واسط عمل می‌کند. وقتی صرف دیگر شیوه‌های اجرا (کامپایل کد بایت یا کامپایل کد محلی) به صورت یک رشته صرف ذخیره می‌شود، یک افزایش سرعت در هزینه‌های متقابل به وجود می‌آید، بنابراین آن‌ها معمولاً فقط خارج از مفسر خط فرمان استفاده می‌شوند. (وقتی یک ماژول وارد می‌شود)
برنامه‌های واسط دیگر، امکانات تحت آن را در مفسر بیسیک افزایش می‌دهند، شامل آی‌دی‌ال‌ئی و آی‌پایتون. وقتی عموماً از برنامه واسط پایتون پیروی می‌شود، خصوصیاتی مشابه تکمیل خودکار، نگه داشتن زمان اجرای برنامه و نشان دادن صرف پیاده‌سازی می‌شود.
برای پایتون واسط گرافیکی کاربرهای بسیاری نوشته شده‌است که پرکاربردترین آن‌ها به شرح زیر است:
import tkinter as tk
fenster = tk.Tk() fenster.geometry("200x100") label = tk.Label(fenster, text="Hallo Welt!") label.pack()
def befehl():
button = tk.Button(fenster, text="OK", command=befehl) button.pack()
import turtle from turtle import speed, reset, goto
speed(0) reset() turtle.x = -200 turtle.y = 200
while turtle.y != -200:
از سال ۲۰۰۳ پایتون طبق شاخص تیوبی یکی از ده زبان محبوب برنامه‌نویسی بوده‌است و در فوریهٔ ۲۰۲۰ سومین زبان برنامه‌نویسی محبوب (بعد از c و جاوا) بوده‌است.پایتون در سال‌های ۲۰۰۷ ،۲۰۱۰ و ۲۰۱۸ به عنوان زبان برنامه‌نویسی سال انتخاب شده‌است.
سازمان‌های بزرگی مثل گوگل، یاهو، سرن، فیسبوک، ناسا از پایتون استفاده می‌کنند. ITA نیز از پایتون برای بعضی از اجزای خود استفاده می‌کند. همچنین شبکهٔ اجتماعی ردیت نیز به‌طور کامل در پایتون نوشته شده‌است.
پایتون به عنوان یک زبان اسکریپت نویسی می‌تواند در اپلیکیشن‌های وب استفاده شود مثلاً استفاده از mod_wsgi برای وب سرور آپاچی. چارچوب‌های نرم‌افزاری تحت وب مثل جنگو، پایلونز، توربوگیرز، تورنادو، فلسک، باتل، زوپ به توسعه دهندگان در نگهداری و طراحی اپلیکیشن‌های پیچیده کمک می‌کنند. Pyjs و آیرون پایتون می‌توانند برای توسعهٔ اپلیکیشن‌های ایجکس پایهٔ سمت کلاینت استفاده شوند. از اس‌کیوال الکمی می‌توان در نگاشت داده‌ها بر پایگاه دادهٔ رابطه‌ای استفاده شود. تویستد یک فرم ورک برای برنامه‌نویسی ارتباط بین کامپیوترها است مثلاً دراپ باکس از آن استفاده می‌کند.
کتابخانه‌هایی مثل نام‌پای، سای‌پای و مت‌پلاتامکان استفادهٔ اثر بخش از پایتون در محاسبهٔ علمی را فراهم می‌آورد همچنین کتابخانه‌های تخصصی بایوپایتون و آستروپای که در حوزهٔ خاصی کارایی دارند. نرم‌افزار ریاضی سیج مث که دارای یک رابط کاربری دفترچه ای به زبان پایتون است: کتابخانهٔ این نرم‌افزار بسیاری از مباحث ریاضی را پوشش می‌دهد. مثل جبر، ترکیبیات، محاسبات عددی، نظریهٔ اعداد و حسابان.
پایتون در نرم‌افزارهای بسیاری به عنوان زبان اسکریپت نویسی استفاده می‌شود نرم‌افزارهایی مثل آباکوس که از روش اجزاء محدود استفاده می‌کند، فری‌کد که اجسام سه بعدی پارامتری را مدل‌سازی می‌کند. بسته‌های انیمیشن سه بعدی مثل تری دی مکس , بلندر , سینما ۴بعدی، لایت‌ویو، هودینی، مایا، مودو , موشن بیلدر، سافت‌ایمیج، نرم‌افزار ایجاد جلوه‌های ویژه مثل نیوک , برنامهٔ دستکاری تصاویر دو بعدی مثل گیمپ اینک‌اسکیپ، اسکربس و پینت شاپ پرو، نرم‌افزارهای نت نویسی مثل اسکور رایتر و کپلا. گنو دیباگر از پایتون برای پرینت زیبا استفاده می‌کند تا ساختارهای پیچیده مثل C++ کانتینر را نشان دهد. شرکت ازری هم‌اکنون در حال ترقی دادن پایتون به عنوان بهترین انتخاب برای نوشتن فایل آغازگر در آرک جی‌آی‌اس است. همچنین از پایتون در بازی‌های ویدئویی استفاده می‌شود. همچنین پایتون به عنوان اولین زبان از سه زبان گوگل اپ انجین پذیرفته شده‌است دو زبان دیگر زبان‌های جاوا و گو هستند.
از پایتون استفاده وسیعی در صنعت امنیت اطلاعات می‌شود. مثل توسعهٔ اکسپلویت.
پایتون در پروژه‌های هوش مصنوعی و یادگیری ماشینی استفاده می‌شود کتابخانه‌هایی که در این کار استفاده می‌شوند کتابخانه‌هایی مثل تنسورفلو، کرس، پای‌تورچ و سایکیت-لرن هستند. پایتون به عنوان زبان اسکریپت نویسی با معماری ماژولار و نحو ساده و ابزار پردازش متن قوی برای پردازش زبان‌های طبیعی استفاده می‌شود.
پایتون در بسیاری از سیستم عامل‌ها به عنوان جزء استاندارد وجود دارد. پایتون در سیستم عامل‌های توزیع لینوکس، آمیگااواس ۴، فری بی‌اس‌دی، نت‌بی‌اس‌دی، اوپن‌بی‌اس‌دی و مک‌اواس می‌تواند از طریق خط فرمان (ترمینال) استفاده شود. ردهت لینوکس و فدورا هر دو از نصاب پایتونی آناکوندا استفاده می‌کنند. لینوکس جنتو از پایتون در سیستم مدیریت بسته، یعنی پورتج استفاده می‌کند. پاردوس از آن برای مدیریت و در طول راه‌اندازی سیستم استفاده می‌کند.طراحی و فلسفهٔ پایتون بر زبان‌های زیادی تأثیر گذاشته‌است: https://www.aparat.com/Python.Academy/Python_Academy