Все версии Python: история самого популярного языка программирования

Начинающий
Статус
Оффлайн
Регистрация
23 Июл 2023
Сообщения
18
Реакции[?]
4
Поинты[?]
4K
За 20 лет существования Python смог стать самым востребованным языком программирования. Разработчики могут с легкостью читать и понимать программы питона, так как он имеет достаточно простой синтаксис и стандартную библиотеку, а также каждый программист может с легкостью перенести его на различные операционные системы.


Топ-4 популярных области, в которых используется Python в 2023 году:
  • Искусственный интеллект
  • Машинное обучение
  • Data science
  • ML и Al
На данный момент доступны следующие версии Python:
  • Python 1.0 (январь 1994 года)
  • Python 1.5 (декабрь 1997 года)
  • Python 1.6 (сентябрь 2000 года)
  • Python 2.0 (октябрь 2000 года)
  • Python 2.1 (апрель 2001 года)
  • Python 2.4 (декабрь 2001 года)
  • Python 2.3 (июль 2003 года)
  • Python 2.4 (ноябрь 2004 года)
  • Python 2.5 (сентябрь 2006 года)
  • Python 2.6 (октябрь 2008 года)
  • Python 2.7 (июль 2010 года)
  • Python 3.0 (декабрь 2008 года)
  • Python 3.1 (июнь 2009 года)
  • Python 3.2 (февраль 2011 года)
  • Python 3.3 (сентябрь 2012 года)
  • Python 3.4 (март 2014 года)
  • Python 3.5 (сентябрь 2015 года)
  • Python 3.6 (декабрь 2016 года)
  • Python 3.7 (июнь 2018 года)
  • Python 3.8 (октябрь 2019 года)
  • Python 3.9 (октябрь 2021 года-2023 год)
Двумя основными ветвями языка являются версии Python 2.0 и Python 3.0.
Первая версия Python 0.9.0:
Данная версия питона была выпущена в 1991 году. Она основывалась на уже созданном языке программирования АВС, но имела свои особенности: отступы вместо привычных фигурных скобок.

Python 1.0:
Эта версия программы питон стала доступна пользователям в январе 1994 года. Новыми фишками питона стали такие функции как:lambda(лямбда-исчисление), map, filter и свёртка списка. Следующие версии до 2.0 включали незначительные изменения и исправления ошибок разработчиков.

Версия BeOpen
Затем в 2000 году главные члены команды разработчиков Python перешли в BeOpen.com, создав команду BeOpen PythonLab. Они работали над новым релизом Python 2.0, однако он стал их первой и последней работой над этим языком.

Версия Python 2.0
Python 2.0 был запущен в 2000 году с большими изменениями в хранилище исходного кода. В нем появилось множество желаемых функций, таких как поддержка unicode, понимание списков и сборка мусора. Чуть позже в Python 2.2 была введена унификация типов и классов в рамках одной иерархии, что позволило питону стать по-настоящему объектно-ориентированным. Примерно в это же время многие программисты использовали Python в качестве альтернативного языка сценариев. Поскольку Java доминировала в мире корпоративных приложений, питон использовался в небольших нишевых приложениях. Даже сами разработчики начали использовать Python, чтобы увеличить скорость кодирования из-за его функциональной совместимости.

Python 2.1
Добавлена поддержка вложенных областей для большей схожести с другими языками со статической областью.​
Python 2.2
Объединены типы и классы в единую иерархию Python, чтобы сделать его более объектно-ориентированным. Кроме того, добавлены генераторные процедуры, которые управляют поведением циклов.​
Python 2.4
Добавлены выражения генератора для функции итератора, декораторов функций и десятичного типа данных.​
Python 2.5
Добавлен оператор with, который заключает код в контекстный менеджер.​
Python 2.6
Добавлены обратно совместимые функции версии 3.0, включая TypeError, bin() и _complex_(). Кроме того, оптимизирован оператор with.​
Python 2.7
Незначительные исправления ошибок и оптимизации. Прекращена поддержка Python 2.​


Python 3.0
Эта версия питона претерпела больше всего изменений. Основная задача обновления состояла в устранении фундаментальных недостатков дизайна языка путем удаления дублирующихся модулей и конструкций. Удаление многих дублирующих инструментов, к сожалению, означало, что весь предыдущий код Python 2 был несовместим с Python 3.0. Некоторые из наиболее заметных изменений заключаются в том, что print теперь являлась встроенной функцией.

Python 3.1
Добавлена поддержка упорядоченных словарей, которые позволяют считывать, изменять и затем записывать обратно конфигурационные файлы в их первоначальном порядке. Появилась возможность ограничивать модули определенными API, которые будут оставаться стабильными, несмотря на обновления. Добавлен модуль argparse для замены optparse и библиотека futures для параллельного программирования.​
Python 3.2
Повторно добавлена поддержка объявления unicode, чтобы облегчить переход с Py2 на Py3. Упрощен поиск ошибок за счет устранения требования указывать конкретный тип ошибки. Все ошибки теперь можно отлавливать с помощью OSError.​
Python 3.3
Добавлен модуль синхронизации, который включает поддержку реализаций цикла обработки событий.
Python 3.5 Сентябрь 2015 г. Дополнительная поддержка асинхронного программирования путем добавления ожидаемых объектов, функций сопрограммы, асинхронной итерации и асинхронных контекстных менеджеров.​
Python 3.4
Добавлен стабилизированный модуль asyncio с дополнительными функциями, синтаксисом, оптимизациями и исправлениями ошибок.​
Python 3.5
Добавлена поддержка асинхронных генераторов и сжатий. Добавлены f-строки, которые включают выражения, вычисляемые во время выполнения.​
Python 3.6
Добавлены async и await в качестве зарезервированных ключевых слов. Кроме того, добавлен метод breakpoint(), который переносит вас в отладчик на месте вызова. Оценку аннотаций теперь можно отложить до времени выполнения, а не при определении, чтобы избежать ошибок области видимости.​
Python 3.7
Добавлен walrus operator (:=), который позволяет присваивать значения переменным как части более крупного выражения. Включены позиционные аргументы, позволяющие указать, что параметр должен быть отмечен позицией, а не ключевым словом.​
Python 3.8
Добавлена поддержка спецификатора f-string =, чтобы обеспечить больший контроль над тем, как представлена f-строка.​
Python 3.9
Добавлены str.remove prefix(приставка) и stir.remove suffix(суффикс) для легкого удаления ненужных разделов строки.​
  1. SelfType — облегчает работу с классами. При помощи него можно сделать возврат экземпляра класса более понятным.
  2. TypeVarTuple — функция¸ которая помогает охватывать любое количество типов (в предыдущей версии эта же функция позволяла выполнить команду только с одним типом).
  3. LiteralString — супертип, необходимый для работы со строками: включает в себя все сроковые литералы, совместимые с ним. Однако произвольные символы и строки с типом str (комбинированные строки) не входят в работу данного супертипа.
  4. Required и NotRequired — метки, благодаря которым можно помечать отдельные элементы в типизированных словарях. Они определяют обязательные и необязательные поля.
  5. @dataclass_transform — декоратор классов, методов и функций. Например, при его указании система проверки статисических классов сможет расценивать метаклассы.

Удаление старых фишек в Python 3.0:
По словам разработчиков, модули cgi, crypt, aifc, uu, pipes, chunk, msilib, telnetlib, nis, nntplib, sndhdr, spwd, cgitb, mailcap, xdrlib, sunau, assaudiodev и функция PyUnicode_Encode* устарели. Из-за этого все вышеперечисленные фишки полностью удалены из языка пайтон.

Какое будущее у Python:
В настоящее время питон является одним из тех языков, которые пользуются наибольшим спросом в сообществе. И даже python часто обновляет свои функции и библиотеки для будущих целей, таких как AI и ML. Python идеально подходит для роста вместе с этим историческим всплеском инноваций, основанных на данных. Поскольку с каждой версией выпускается все больше инструментов визуализации и анализа данных, похоже, что питон не откажется в будущем от своего лидерства.
 
Последнее редактирование:
Сверху Снизу