История Питона
В этой статье отсутствует информация о важных особенностях версий после 3.0. ( март 2024 г. ) |
Язык программирования Python был задуман в конце 1980-х годов. [1] и его реализация была начата в декабре 1989 г. [2] из Гвидо ван Россум и CWI в Нидерландах в качестве преемника ABC, способного обрабатывать исключения взаимодействовать с операционной системой Amoeba . [3] Ван Россум является основным автором Python, и его продолжающаяся центральная роль в определении направления Python отражена в титуле, присвоенном ему сообществом Python, «Доброжелательный диктатор на всю жизнь» (BDFL) . [4] [5] (Однако 12 июля 2018 года Ван Россум ушел с поста лидера. [6] ). Python был назван в честь BBC телешоу «Летающий цирк Монти Пайтона» . [7]
Python 2.0 был выпущен 16 октября 2000 года и содержал множество важных новых функций, включая с циклическим обнаружением сборщик мусора (в дополнение к подсчету ссылок ) для управления памятью и поддержку Unicode , а также изменение самого процесса разработки с перейти к более прозрачному процессу, поддерживаемому сообществом. [8]
Python 3.0, основная версия с обратной совместимостью, была выпущена 3 декабря 2008 г. [9] после длительного периода испытаний. Многие из его основных функций также были перенесены в обратно совместимые, хотя и не поддерживаемые, версии Python 2.6 и 2.7. [10]
Ранняя история
[ редактировать ]В феврале 1991 года Ван Россум опубликовал код (с пометкой версии 0.9.0) на alt.sources. [11] [12] На этом этапе разработки уже присутствовали классы с наследованием , обработкой исключений, функциями и основными типами данных . list
, dict
, str
и так далее. Также в этом первоначальном выпуске была система модулей , заимствованная у Modula-3 ; Ван Россум описывает этот модуль как «одну из основных программных единиц Python». [1] Модель исключений Python также напоминает модель Modula-3, но с добавлением else
пункт. [3] В 1994 году был основан comp.lang.python , основной дискуссионный форум Python, что стало важной вехой в росте пользовательской базы Python. [1]
Версия 1
[ редактировать ]Python достиг версии 1.0 в январе 1994 года. Основными новыми функциями, включенными в этот выпуск, были инструменты функционального программирования. lambda
, map
, filter
и reduce
. Ван Россум заявил, что «Python приобрел лямбду, сокращение(), фильтр() и карту() благодаря хакеру Лиспа , который пропустил их и представил рабочие исправления ». [13]
Последней версией, выпущенной во время работы Ван Россума в CWI, была Python 1.2. В 1995 году Ван Россум продолжил свою работу над Python в Корпорации национальных исследовательских инициатив (CNRI) в Рестоне , штат Вирджиния, откуда он выпустил несколько версий.
К версии 1.4 Python приобрел несколько новых функций. вдохновленные Modula-3 Среди них следует отметить аргументы ключевых слов, (которые также похожи на аргументы ключевых слов Common Lisp ) и встроенную поддержку комплексных чисел . Также включена базовая форма сокрытия данных с помощью искажения имени , хотя ее легко обойти. [14]
Во время пребывания Ван Россума в CNRI он запустил инициативу «Компьютерное программирование для всех» (CP4E), намереваясь сделать программирование более доступным для большего числа людей, обладающих базовой «грамотностью» в языках программирования, аналогичной базовой грамотности английского языка и математическим навыкам, требуемым большинство работодателей. Python сыграл в этом центральную роль: из-за его ориентации на чистый синтаксис он уже был подходящим, а цели CP4E имели сходство с его предшественником, ABC. Проект финансировался DARPA . [15] По состоянию на 2007 год [update], проект CP4E неактивен, и хотя Python пытается быть легко изучаемым и не слишком запутанным в своем синтаксисе и семантике, охват непрограммистов не является активной проблемой. [16]
БудьтеОткрытыми
[ редактировать ]В 2000 году основная группа разработчиков Python переехала на BeOpen.com. [17] сформировать команду BeOpen PythonLabs. [18] [19] CNRI потребовала выпустить версию 1.6, в которой подводятся итоги разработки Python до момента, когда команда разработчиков покинула CNRI. Следовательно, графики выпуска версий 1.6 и 2.0 во многом пересекались. [8] Python 2.0 был единственным выпуском BeOpen.com. После того, как Python 2.0 был выпущен BeOpen.com, Гвидо ван Россум и другие разработчики PythonLabs присоединились к Digital Creations .
Версия Python 1.6 включала новую лицензию CNRI, которая была значительно длиннее, чем лицензия CWI, которая использовалась в предыдущих выпусках. Новая лицензия включала пункт о том, что лицензия регулируется законами штата Вирджиния . Фонд свободного программного обеспечения утверждал, что положение о выборе права несовместимо со Стандартной общественной лицензией GNU . BeOpen, CNRI и FSF договорились об изменении лицензии свободного программного обеспечения Python , которое сделает его совместимым с GPL. Python 1.6.1 по сути такой же, как Python 1.6, с несколькими незначительными исправлениями ошибок и с новой лицензией, совместимой с GPL. [20]
Версия 2
[ редактировать ]Python 2.0, выпущенный в октябре 2000 г. [8] представило понимание списков , функцию, заимствованную из функционального программирования языков SETL и Haskell . Синтаксис Python для этой конструкции очень похож на синтаксис Haskell, за исключением предпочтения Haskell символов пунктуации и предпочтения Python алфавитных ключевых слов. В Python 2.0 также появился сборщик мусора, способный собирать ссылочные циклы. [8]
Python 2.1 был близок к Python 1.6.1, а также к Python 2.0. Его лицензия была переименована в Python Software Foundation License . Весь код, документация и спецификации, добавленные с момента альфа-выпуска Python 2.1, принадлежат Python Software Foundation (PSF), некоммерческой организации , созданной в 2001 году по образцу Apache Software Foundation . [20] В выпуске было внесено изменение в спецификацию языка для поддержки вложенных областей, как и в других языках со статической областью действия . [21] (Эта функция была отключена по умолчанию и не требовалась до Python 2.2.)
Python 2.2 был выпущен в декабре 2001 года; [22] Основным нововведением стало объединение типов Python (типов, написанных на C ) и классов (типов, написанных на Python) в одну иерархию. Эта единая унификация сделала объектную модель Python чисто и последовательно объектно-ориентированной. [23] Также были добавлены генераторы , вдохновленные Icon . [24]
Python 2.5 был выпущен в сентябре 2006 года. [25] и представил with
оператор, который включает блок кода в контекстный менеджер (например, получение блокировки перед запуском блока кода и снятие блокировки после этого или открытие файла , а затем его закрытие), позволяющий получить ресурс при инициализации (RAII) - как поведение и замена распространенной идиомы «попробуй/наконец». [26]
Python 2.6 был выпущен одновременно с Python 3.0 и включал в себя некоторые функции из этого выпуска, а также режим «предупреждений», в котором подчеркивалось использование функций, которые были удалены в Python 3.0. [27] [10] Аналогичным образом, Python 2.7 совпадал с Python 3.1 и включал в себя его функции. [28] который был выпущен 26 июня 2009 года.Затем выпуск параллельных версий 2.x и 3.x был прекращен, и Python 2.7 стал последним выпуском в серии 2.x. [29] В ноябре 2014 года было объявлено, что Python 2.7 будет поддерживаться до 2020 года, но пользователям было предложено как можно скорее перейти на Python 3. [30] Поддержка Python 2.7 закончилась 1 января 2020 года вместе с заморозкой кода ветки разработки 2.7. Последний выпуск 2.7.18 вышел 20 апреля 2020 г. и включал исправления критических ошибок и блокировщиков выпусков. [31] Это ознаменовало конец жизни Python 2. [32]
Версия 3
[ редактировать ]Python 3.0 (также называемый «Python 3000» или «Py3K») был выпущен 3 декабря 2008 года. [9] Он был разработан для исправления фундаментальных недостатков дизайна языка: необходимые изменения не могли быть реализованы при сохранении полной обратной совместимости с серией 2.x, что потребовало нового основного номера версии. Руководящим принципом Python 3 было: «уменьшить дублирование функций, удалив старые способы ведения дел». [33]
Python 3.0 был разработан с той же философией, что и предыдущие версии. Однако, поскольку в Python накопились новые и избыточные способы программирования одной и той же задачи, в Python 3.0 особое внимание уделялось удалению дублирующихся конструкций и модулей, что соответствует дзену Python : «Должен быть один — и желательно только один — очевидный способ решения одной и той же задачи». сделай это».
Тем не менее, Python 3.0 оставался мультипарадигмальным языком . Программисты по-прежнему могли следовать парадигмам объектно-ориентированного , структурированного и функционального программирования, но в рамках такого широкого выбора детали должны были быть более очевидными в Python 3.0, чем в Python 2.x.
Совместимость
[ редактировать ]Python 3.0 нарушил обратную совместимость, и большая часть кода Python 2 не работает в неизмененном виде на Python 3. [34] Python динамическая типизация Например, в сочетании с планами по изменению семантики некоторых методов словарей сделала совершенный механический перевод с Python 2.x на Python 3.0 очень трудным. Инструмент под названием «2to3» выполняет те части перевода, которые можно выполнить автоматически. В этом плане 2to3 оказался довольно успешным, хотя в раннем обзоре отмечалось, что существуют аспекты перевода, с которыми такой инструмент никогда не сможет справиться. [35] До внедрения Python 3 проектам, требующим совместимости с сериями 2.x и 3.x, рекомендовалось иметь один исходный код (для серии 2.x) и создавать выпуски для платформы Python 3.x с использованием 2-3. Внесение изменений в код Python 3.x не поощрялось до тех пор, пока код должен был работать на Python 2.x. [10] Это больше не рекомендуется; по состоянию на 2012 год предпочтительным подходом было создание единой базы кода, которая могла бы работать как на Python 2, так и на Python 3, с использованием модулей совместимости. [36]
Функции
[ редактировать ]Некоторые из основных изменений, включенных в Python 3.0, были:
- Изменение
print
так что это встроенная функция , а не оператор. Это облегчило изменение модуля для использования другой функции печати, а также сделало синтаксис более регулярным. В Python 2.6 и 2.7print()
доступен как встроенный, но замаскирован синтаксисом оператора печати, который можно отключить, введяfrom __future__ import print_function
вверху файла [37] - Удаление Python 2
input
функции и переименованиеraw_input
функционировать, чтобыinput
. Python 3input
функция ведет себя как Python 2raw_input
функция, в которой входные данные всегда возвращаются в виде строки, а не оцениваются как выражение - Движущийся
reduce
(но неmap
илиfilter
) из встроенного пространства имен вfunctools
(обоснованием является код, который используетreduce
менее читаем, чем код, использующий цикл for и переменную-аккумулятор) [38] [39] - Добавление поддержки необязательных аннотаций функций, которые можно использовать для неформальных объявлений типов или других целей. [40]
- Объединение
str
/unicode
типы, представляющие текст и вводящие отдельный неизменяемыйbytes
тип; и в основном соответствующий изменяемыйbytearray
тип, оба из которых представляют массивы байтов [41] - Удаление функций обратной совместимости, включая классы старого стиля, строковые исключения и неявный относительный импорт.
- Изменение функциональности целочисленного деления : в Python 2 целочисленное деление всегда возвращает целое число. Например
5 / 2
является2
; тогда как в Python 3,5 / 2
является2.5
. (И в Python 2 (2.2 и далее), и в Python 3 существует отдельный оператор для обеспечения старого поведения:5 // 2
является2
) - Разрешение использования букв, отличных от ASCII, в идентификаторах, [42] например, в
smörgåsbord
, полная поддержка символов Unicode в исходном коде ( UTF-8 ) по умолчанию используется
Последующие выпуски серии Python 3.x включали дополнительные существенные новые функции; вся текущая разработка языка ведется в серии 3.x.
Таблица версий
[ редактировать ]Релизы до пронумерованных версий:
- Начало реализации – декабрь 1989 г. [2]
- Внутренние выпуски в Centrum Wiskunde & Informatica - 1990 г. [2]
Версия | Последний микро-версия | Дата выпуска | Окончание полной поддержки | Конец исправлений безопасности |
---|---|---|---|---|
0.9. | 0.9.9 [2] | 1991-02-20 [2] | 1993-07-29 [а] [2] | |
1.0. | 1.0.4 [2] | 1994-01-26 [2] | 1994-02-15 [а] [2] | |
1.1. | 1.1.1 [2] | 1994-10-11 [2] | 1994-11-10 [а] [2] | |
1.2. | 1995-04-13 [2] | Не поддерживается | ||
1.3. | 1995-10-13 [2] | Не поддерживается | ||
1.4. | 1996-10-25 [2] | Не поддерживается | ||
1.5. | 1.5.2 [43] | 1998-01-03 [2] | 1999-04-13 [а] [2] | |
1.6. | 1.6.1 [43] | 2000-09-05 [44] | 2000–09 [а] [43] | |
2.0. | 2.0.1 [45] | 2000-10-16 [46] | 2001-06-22 [а] [45] | |
2.1. | 2.1.3 [45] | 2001-04-15 [47] | 2002-04-09 [а] [45] | |
2.2. | 2.2.3 [45] | 2001-12-21 [48] | 2003-05-30 [а] [45] | |
2.3. | 2.3.7 [45] | 2003-06-29 [49] | 2008-03-11 [а] [45] | |
2.4. | 2.4.6 [45] | 2004-11-30 [50] | 2008-12-19 [а] [45] | |
2.5. | 2.5.6 [45] | 2006-09-19 [51] | 2011-05-26 [а] [45] | |
2.6. | 2.6.9 [27] | 2008-10-01 [27] | 2010-08-24 [б] [27] | 2013-10-29 [27] |
2.7. | 2.7.18 [32] | 2010-07-03 [32] | 2020-01-01 [с] [32] | |
3.0. | 3.0.1 [45] | 2008-12-03 [27] | 2009-06-27 [52] | |
3.1. | 3.1.5 [53] | 2009-06-27 [53] | 2011-06-12 [54] | 2012-04-06 [53] |
3.2. | 3.2.6 [55] | 2011-02-20 [55] | 2013-05-13 [б] [55] | 2016-02-20 [55] |
3.3. | 3.3.7 [56] | 2012-09-29 [56] | 2014-03-08 [б] [56] | 2017-09-29 [56] |
3.4. | 3.4.10 [57] | 2014-03-16 [57] | 2017-08-09 [58] | 2019-03-18 [а] [57] |
3.5. | 3.5.10 [59] | 2015-09-13 [59] | 2017-08-08 [60] | 2020-09-30 [59] |
3.6. | 3.6.15 [61] | 2016-12-23 [61] | 2018-12-24 [б] [61] | 2021-12-23 [61] |
3.7. | 3.7.17 [62] | 2018-06-27 [62] | 2020-06-27 [б] [62] | 2023-06-06 [62] |
3.8. | 3.8.19 [63] | 2019-10-14 [63] | 2021-05-03 [б] [63] | 2024-10 [63] |
3.9. | 3.9.19 [64] | 2020-10-05 [64] | 2022-05-17 [б] [64] | 2025-10 [64] [65] |
3.10. | 3.10.14 [66] | 2021-10-04 [66] | 2023-04-05 [б] [66] | 2026-10 [66] |
3.11. | 3.11.9 [67] | 2022-10-24 [67] | 2024-04-02 [б] [67] | 2027-10 [67] |
3.12. | 3.12.4 [68] | 2023-10-02 [68] | 2025-05 [68] | 2028-10 [68] |
3.13. | 3.13.0rc1 [69] [70] | 2024-10-01 [69] | 2026-05 [69] | 2029-10 [69] |
3.14. | Н/Д [71] | 2025-10-01 [71] | 2027-05 [71] | 2030-10 [71] |
Примечания к таблице:
- ^ Перейти обратно: а б с д и ж г час я дж к л Дата последнего микрорелиза.
- ^ Перейти обратно: а б с д и ж г час я Дата последнего выпуска, не связанного только с безопасностью.
- ^ Официальная поддержка закончилась 1 января 2020 г., но окончательная версия кода, появившаяся 1 января 2020 г., была выпущена 20 апреля 2020 г. как версия 2.7.18. [32]
Поддерживать
[ редактировать ]См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Перейти обратно: а б с «Создание Python» . Разработчик Артима. Архивировано из оригинала 1 сентября 2016 года . Проверено 22 марта 2007 г.
- ^ Перейти обратно: а б с д и ж г час я дж к л м н тот п д ван Россум, Гвидо (20 января 2009 г.). «Краткая хронология Python» . Архивировано из оригинала 25 августа 2011 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б «Почему вообще был создан Python?» . Часто задаваемые вопросы по Python. Архивировано из оригинала 23 февраля 2008 года . Проверено 22 марта 2007 г.
- ^ ван Россум, Гвидо (31 июля 2008 г.). «Происхождение БДФЛ» . Архивировано из оригинала 16 января 2011 года . Проверено 1 августа 2008 г.
- ^ «Скрипты Python Creator внутри Google» . www.eweek.com. 7 марта 2006 г. Архивировано из оригинала 9 августа 2018 г. Проверено 13 мая 2008 г.
- ^ Фэйрчайлд, Карли (12 июля 2018 г.). «Гвидо ван Россум уходит с роли пожизненного великодушного диктатора Питона» . Linux-журнал . Архивировано из оригинала 13 июля 2018 года . Проверено 12 июля 2018 г.
- ^ «Общие часто задаваемые вопросы по Python — документация Python 3.8.3» . docs.python.org . Архивировано из оригинала 24 октября 2012 года . Проверено 4 июня 2020 г.
- ^ Перейти обратно: а б с д Кучлинг, Эндрю М.; Задка, Моше. «Что нового в Python 2.0» . Архивировано из оригинала 14 декабря 2009 года . Проверено 22 марта 2007 г.
- ^ Перейти обратно: а б «Добро пожаловать на Python.org» . python.org . Архивировано из оригинала 14 июня 2020 года . Проверено 27 декабря 2016 г.
- ^ Перейти обратно: а б с ван Россум, Гвидо (5 апреля 2006 г.). «PEP 3000 – Python 3000» . Архивировано из оригинала 2 апреля 2022 года . Проверено 27 декабря 2016 г.
- ^ «Python 0.9.1 часть 21.01» . Архивы alt.sources. Архивировано из оригинала 11 августа 2021 года . Проверено 11 августа 2021 г.
- ^ «ИСТОРИЯ» . Распространение исходного кода Python . Фонд Питона. Архивировано из оригинала 1 декабря 2017 года . Проверено 23 ноября 2017 г.
- ^ ван Россум, Гвидо. «Судьба сокращения() в Python 3000» . Разработчик Артима. Архивировано из оригинала 7 апреля 2007 года . Проверено 22 марта 2007 г.
- ^ «ЖЖ №37: Обновление Python 1.4» . Архивировано из оригинала 1 мая 2007 года . Проверено 29 апреля 2007 г.
- ^ ван Россум, Гвидо. «Компьютерное программирование для всех» . Архивировано из оригинала 1 мая 2007 года . Проверено 22 марта 2007 г.
- ^ «Компьютерное программирование для всех» . Фонд программного обеспечения Python. Архивировано из оригинала 29 марта 2007 года . Проверено 22 марта 2007 г.
- ^ «Команда разработчиков Python переезжает на BeOpen.Com – Slashdot» . slashdot.org . Архивировано из оригинала 12 апреля 2020 года . Проверено 12 апреля 2020 г.
- ^ «Открыть | Ваш партнер по цифровому страхованию» . Архивировано из оригинала 15 августа 2000 года.
- ^ «Поставщик средств управления контентом PyBiz объявляет о стратегическом партнерстве с BeOpen в использовании языка программирования Python» (PDF) . Архивировано (PDF) из оригинала 12 апреля 2020 г. Проверено 12 апреля 2020 г.
- ^ Перейти обратно: а б «История и лицензия» . Документация Python 3 . Архивировано из оригинала 5 декабря 2016 года . Проверено 7 декабря 2022 г.
- ^ Хилтон, Джереми (1 ноября 2000 г.). «PEP 227 – Статически вложенные области» . Архивировано из оригинала 23 мая 2022 года . Проверено 22 марта 2007 г.
- ^ «Питон 2.2» . Python.org . Архивировано из оригинала 2 августа 2019 года . Проверено 31 декабря 2019 г.
- ^ Кучлинг, Эндрю М. (21 декабря 2001 г.). «PEP 252 и 253: изменения типа и класса» . Что нового в Python 2.2 . Фонд Питона. Архивировано из оригинала 17 сентября 2008 года . Проверено 5 сентября 2008 г.
- ^ Шеменауэр, Нил; Питерс, Тим; Хетланд, Магнус (21 декабря 2001 г.). «PEP 255 – Простые генераторы» . Архивировано из оригинала 31 января 2023 года . Проверено 5 сентября 2008 г.
- ^ «Выпуск Python 2.5» . Python.org . Архивировано из оригинала 4 августа 2019 года . Проверено 20 марта 2018 г.
- ^ «Основные моменты: Python 2.5» . Python.org . Архивировано из оригинала 4 августа 2019 года . Проверено 20 марта 2018 г.
- ^ Перейти обратно: а б с д и ж Норвиц, Нил; Варшава, Барри (29 июня 2006 г.). «PEP 361 — График выпуска Python 2.6 и 3.0» . Архивировано из оригинала 12 апреля 2022 года . Проверено 29 ноября 2019 г.
- ^ Кучлинг, Эндрю М. (3 июля 2010 г.). «Что нового в Python 2.7» . Архивировано из оригинала 7 июня 2012 года . Проверено 7 октября 2012 г.
Подобно тому, как Python 2.6 включает в себя функции Python 3.0, версия 2.7 включает в себя некоторые новые функции Python 3.1. Серия 2.x продолжает предоставлять инструменты для перехода на серию 3.x.
- ^ Варшава, Барри (9 ноября 2011 г.). «PEP 404 — График отмены выпуска Python 2.8» . Архивировано из оригинала 23 мая 2022 года . Проверено 7 октября 2012 г.
- ^ Ну и дела, Сью (14 апреля 2014 г.). «Python 2.7 будет поддерживаться до 2020 года» . i-programmer.info . Архивировано из оригинала 10 мая 2016 года . Проверено 27 декабря 2016 г.
- ^ «Коммитирует: python/cpython в версии 2.7» . Гитхаб . Архивировано из оригинала 22 апреля 2020 года . Проверено 22 апреля 2020 г.
- ^ Перейти обратно: а б с д и Петерсон, Бенджамин (3 ноября 2008 г.). «PEP 373 — График выпуска Python 2.7» . Архивировано из оригинала 13 марта 2022 года . Проверено 20 апреля 2020 г.
- ^ «PEP 3100 — разные планы Python 3.0 | peps.python.org» . peps.python.org . Архивировано из оригинала 25 мая 2022 года . Проверено 2 июня 2022 г.
- ^ «PEP 3000 – Python 3000 | peps.python.org» . peps.python.org . Архивировано из оригинала 2 апреля 2022 года . Проверено 2 июня 2022 г.
- ^ Руби, Сэм; 2to3. Архивировано 24 марта 2016 г. в Wayback Machine , 1 сентября 2007 г.
- ^ Коглан, Ник; Вопросы и ответы по Python 3. Архивировано 16 марта 2017 г., в Wayback Machine , 29 июня 2012 г.
- ^ Брандл, Георг (19 ноября 2007 г.). «PEP 3105 — Сделайте печать функцией» . Архивировано из оригинала 2 апреля 2022 года . Проверено 27 декабря 2016 г.
- ^ ван Россум, Гвидо. «Часто задаваемые вопросы по Python 3000» . artima.com . Архивировано из оригинала 9 ноября 2020 года . Проверено 27 декабря 2016 г.
- ^ «Судьба сокращения() в Python 3000» . www.artima.com . Архивировано из оригинала 18 декабря 2019 года . Проверено 31 декабря 2019 г.
- ^ Винтер, Коллин; Лаундс, Тони (2 декабря 2006 г.). «PEP 3107 – Аннотации функций» . Архивировано из оригинала 13 марта 2022 года . Проверено 27 декабря 2016 г.
- ^ ван Россум, Гвидо (26 сентября 2007 г.). «PEP 3137 — неизменяемые байты и изменяемый буфер» . Архивировано из оригинала 23 мая 2022 года . Проверено 23 мая 2022 г.
- ^ «PEP 3131 — поддержка идентификаторов, отличных от ASCII | peps.python.org» . Предложения по улучшению Python (PEP) . Проверено 1 июля 2024 г.
- ^ Перейти обратно: а б с «Релизы | Python.org» . Архивировано из оригинала 22 декабря 2015 года . Проверено 29 ноября 2019 г.
- ^ Дрейк, Фред Л. младший (25 июля 2000 г.). «PEP 160 — График выпуска Python 1.6» . Архивировано из оригинала 13 мая 2022 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б с д и ж г час я дж к л м «Загрузить Python | Python.org» . Архивировано из оригинала 8 августа 2018 года . Проверено 29 ноября 2019 г.
- ^ Хилтон, Джереми. «PEP 200 — График выпуска Python 2.0» . Архивировано из оригинала 18 мая 2022 года . Проверено 29 ноября 2019 г.
- ^ Хилтон, Джереми (16 октября 2000 г.). «PEP 226 — График выпуска Python 2.1» . Архивировано из оригинала 23 мая 2022 года . Проверено 29 ноября 2019 г.
- ^ Варшава, Барри; ван Россум, Гвидо (17 апреля 2001 г.). «PEP 251 — График выпуска Python 2.2» . Архивировано из оригинала 4 мая 2022 года . Проверено 29 ноября 2019 г.
- ^ ван Россум, Гвидо (27 февраля 2002 г.). «PEP 283 — График выпуска Python 2.3» . Архивировано из оригинала 12 апреля 2022 года . Проверено 29 ноября 2019 г.
- ^ Варшава, Барри; Хеттингер, Раймонд; Бакстер, Энтони (29 июля 2003 г.). «PEP 320 — График выпуска Python 2.4» . Архивировано из оригинала 17 мая 2022 года . Проверено 29 ноября 2019 г.
- ^ Норвиц, Нил; ван Россум, Гвидо; Бакстер, Энтони (7 февраля 2006 г.). «PEP 356 — График выпуска Python 2.5» . Архивировано из оригинала 8 апреля 2022 года . Проверено 29 ноября 2019 г.
- ^ «17. Цикл разработки — Руководство разработчика Python» . Архивировано из оригинала 18 января 2023 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б с Петерсон, Бенджамин (8 февраля 2009 г.). «PEP 375 — График выпуска Python 3.1» . Архивировано из оригинала 19 апреля 2022 года . Проверено 29 ноября 2019 г.
- ^ Петерсон, Бенджамин (12 июня 2011 г.). «[ВЫПУЩЕНО] Python 3.1.4» . python-announce (список рассылки). Архивировано из оригинала 6 декабря 2021 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б с д Брандл, Георг (30 декабря 2009 г.). «PEP 392 — График выпуска Python 3.2» . Архивировано из оригинала 19 апреля 2022 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б с д Брандл, Георг (23 марта 2011 г.). «PEP 398 — График выпуска Python 3.3» . Архивировано из оригинала 12 апреля 2022 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б с Гастингс, Ларри (17 октября 2012 г.). «PEP 429 — График выпуска Python 3.4» . Архивировано из оригинала 12 апреля 2022 года . Проверено 29 ноября 2019 г.
- ^ Гастингс, Ларри (9 августа 2017 г.). «[ВЫПУЩЕНО] Python 3.4.7 теперь доступен» . python-announce (список рассылки). Архивировано из оригинала 6 декабря 2021 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б с Гастингс, Ларри (22 сентября 2014 г.). «PEP 478 — График выпуска Python 3.5» . Архивировано из оригинала 12 апреля 2022 года . Проверено 17 марта 2020 г.
- ^ Гастингс, Ларри (8 августа 2017 г.). «[ВЫПУЩЕНО] Python 3.5.4 теперь доступен» . python-announce (список рассылки). Архивировано из оригинала 6 декабря 2021 года . Проверено 29 ноября 2019 г.
- ^ Перейти обратно: а б с д Дейли, Нед (30 мая 2015 г.). «PEP 494 — График выпуска Python 3.6» . Архивировано из оригинала 23 мая 2022 года . Проверено 23 мая 2022 г.
- ^ Перейти обратно: а б с д Дейли, Нед (23 декабря 2016 г.). «PEP 537 — График выпуска Python 3.7» . Архивировано из оригинала 16 июля 2023 года . Проверено 16 июля 2023 г.
- ^ Перейти обратно: а б с д Ланга, Лукаш (27 января 2018 г.). «PEP 569 — График выпуска Python 3.8» . Архивировано из оригинала 16 июля 2023 года . Проверено 16 июля 2023 г.
- ^ Перейти обратно: а б с д Ланга, Лукаш (13 октября 2020 г.). «PEP 596 — График выпуска Python 3.9» . Архивировано из оригинала 12 ноября 2022 года . Проверено 7 декабря 2022 г.
- ^ Ланга, Лукаш (4 июня 2019 г.). «PEP 602 — Годовой цикл выпуска Python» . Архивировано из оригинала 16 июля 2023 года . Проверено 16 июля 2023 г.
- ^ Перейти обратно: а б с д Сальгадо, Пабло (25 мая 2020 г.). «PEP 619 — График выпуска Python 3.10» . Архивировано из оригинала 16 июля 2023 года . Проверено 16 июля 2023 г.
- ^ Перейти обратно: а б с д Сальгадо, Пабло (12 июля 2021 г.). «PEP 664 — График выпуска Python 3.11» . Архивировано из оригинала 16 июля 2023 года . Проверено 16 июля 2023 г.
- ^ Перейти обратно: а б с д Воутерс, Томас (24 мая 2022 г.). «PEP 693 — График выпуска Python 3.12» . Архивировано из оригинала 16 июля 2023 года . Проверено 16 июля 2023 г.
- ^ Перейти обратно: а б с д Воутерс, Томас (26 мая 2023 г.). «PEP 719 — График выпуска Python 3.13» . Архивировано из оригинала 16 июля 2023 года . Проверено 16 июля 2023 г.
- ^ «Питон/cpython» . Питон. 9 апреля 2024 года. Архивировано из оригинала 15 сентября 2017 года . Проверено 10 апреля 2024 г.
- ^ Перейти обратно: а б с д ван Кеменаде, Хьюго (24 апреля 2024 г.). «PEP 745 — График выпуска Python 3.14 | peps.python.org» . Предложения по улучшению Python (PEP) . Архивировано из оригинала 5 мая 2024 года . Проверено 15 мая 2024 г.