- 2.1. Теория¶
- 2.1.1. История создания¶
- Язык программирования Python
- История Python
- Происхождение названия
- Логотип
- Даты релизов
- Особенности программирования на Python
- Простой язык, легкий и доступный в изучении
- Бесплатный и с открытым кодом
- Портативность
- Масштабируемый и встраиваемый
- Высокоуровневый, интерпретируемый язык
- Стандартные библиотеки для решения общих задач
- Объектно-ориентированный
- Юмор в Питоне
- Приложения на Python
- Веб-программирование
- Научные и математические вычисления
- Прототипирование
- Почему стоит начать с Питона?
- Простой язык для изучения программирования
- Не слишком строгий
- Первая программа на Python
2.1. Теория¶
Язык Python является одним из самых простых в изучении и самых приятных в использовании из языков программирования, получивших широкое распространение. Программный код на языке Python легко читать и писать, и, будучи лаконичным, он не выглядит загадочным. Python — очень выразительный язык, позволяющий уместить приложение в меньшее количество строк, чем на это потребовалось бы в других языках, таких как C++ или Java.
2.1.1. История создания¶
Разработка языка Python была начата в конце 1980-х годов сотрудником голландского института CWI (Центр математики и информатики, голл. Centrum Wiskunde & Informatica) Гвидо ван Россумом (англ. Guido van Rossum), на основе языка ABC (Рисунок 2.1.1). В феврале 1991 года Гвидо опубликовал исходный текст в группе новостей alt.sources.
Рисунок 2.1.1 — Гвидо ван Россум на конференции в 2006 г. ¶
О создании Python Гвидо ван Россум написал в 1996 г.:
«Около 6 лет назад, в декабре 1989 г., я думал над проектом в области программирования в качестве хобби, которое бы заняло меня на время Рождественских выходных. Мой офис… был закрыл, но компьютер был и дома, и, в общем, это все, что у меня было на руках. Я решил написать интерпретатор для нового скриптового языка, о котором думал в последнее время: наследника ABC, который бы оказался привлекательным для Unix/C хакеров. Пилотное название «Питон» было выбрано с одной стороны в связи с немного скептическим отношением к перспективам проекта, а с другой — из-за того, что я большой фанат шоу «Летающий цирк Монти Пайтона».
Покинув в декабре 2012 года корпорацию Google, с 2013 года Гвидо работал в компании Dropbox Inc, выйдя на пенсию в 2019, а с 2020 работает в компании Microsoft. Имея статус «великодушного пожизненного диктатора» проекта — он продолжает наблюдать за процессом разработки Python, принимая окончательные решения, когда это необходимо (не менее 50% рабочего времени по договоренности с DropBox).
Появившись сравнительно поздно, Python создавался под влиянием множества языков программирования. Так, например, влияние оказали такие языки, как:
- ABC: отступы для группировки операторов, высокоуровневые структуры данных;
- Modula-3: пакеты, модули;
- С, C++: некоторые синтаксические конструкции;
- Smalltalk: ООП;
- Java: обработка исключений и др.
Большая часть других особенностей Python (например, байт-компиляция исходного кода) также была реализована ранее в других языках.
Развитие языка происходит согласно четко регламентированному процессу создания, обсуждения, отбора и реализации документов PEP (Python Enhancement Proposal) — предложений по развитию Python.
В 2008 году, после длительного тестирования, вышла первая версия Python 3000 (или Python 3.0, также используется сокращение Py3k). В Python 3000 устранены многие недостатки архитектуры с максимально возможным (но не полным) сохранением совместимости со старыми версиями Python. На сегодня поддерживаются обе ветви развития (Python 3.x и 2.x) (сравнение и рекомендации), однако получать новый функционал будет только версия 3 6.
Ключевые вехи развития языка приведены в Таблице 2.1.1.
Таблица 2.1.1 — Основные вехи развития языка Python ¶
Актуальная версия (дата выхода) (могла устареть)
Язык программирования Python
Примеры
Python – это интерпретируемый язык программирования, упор в котором сделан на простоту и чистоту кода, что делает его идеальным кандидатом на роль первого языка для изучения. В этом уроке мы рассмотрим особенности данного языка и погрузим Вас в его экосистему.
Что такое программирование на Python?
Языки программирования можно условно разделить на специализированные и языки общего назначения. Специализированные, как следует из названия, созданы и применяются для каких-либо определённых целей. Языки общего назначения, напротив, призваны выполнять широкий спектр задач. К таким языкам и относится Python. Про этот язык часто говорят, что у него «батарейки внутри». Это означает, что язык включает в себя множество готовых решений и удобных инструментов. Почти любую задачу можно решить, используя встроенные в язык средства либо подключив модуль, разработанный сообществом. На данный момент в индексе PyPi (the Python Package Index – главный агрегатор модулей Python) находится 330826 проектов, 2916363 релиза, 4944653 файла, зарегистрировано 540758 участников, что свидетельствует о зрелом и очень большом сообществе, сформировавшемся вокруг языка.
В языке используется «утиная» типизация, что очень удобно.
В список областей, где применяется Пайтон, входят:
- анализ данных
- машинное обучение
- веб-разработка
- научные и математические исследования
- создание десктопных приложений
Как уже говорилось, Питон прост в освоении благодаря короткому и выразительному синтаксису, но эта простота обманчива. За ней скрывается мощь языка высокого уровня. Это означает, что он не только лёгок в освоении, позволяет быстро писать код, но и чрезвычайно эффективен.
Кроме неоспоримых плюсов стоит отметить и ряд минусов:
Из популярных языков программирования этот – один из самых медленных
У языка существуют некоторые проблемы с асинхронным программированием
Особенности типизации и обработки исключений дают большие возможности «выстрелить себе в ногу» — достаточно легко допустить ошибку в коде.
История Python
Питон – язык не новый. Его разработка началась ещё в конце восьмидесятых годов. Релиз первой версии языка произошёл в феврале 1991 года.
Отцом-основателем Питона и, на протяжении многих лет, главным разработчиком являлся голландский программист Гвидо Ван Россум. На момент создания языка Гвидо работал в центре математики и информатики в Нидерландах. В качестве основы для Пайтона Россум взял язык программирования ABC, в разработке которого когда-то участвовал.
Почему выбрали Python
Нет. Он не назван в честь опасной змеи. Россум был фанатом комедийного сериала в конце 70-х. Название “Python” было взято из этого же сериала “Monty Python’s Flying Circus” (Летающий цирк Монти Пайтона).
Происхождение названия
Язык назван в честь телевизионного шоу «Летающий цирк Монти Пайтона», популярного в то время. Не смотря на этот факт, в сообществе прочно укрепилась связь между названием языка и змеями, чему способствует логотип: две змеи.
Как правильно звучит название?
Правильно произносится слово «Python» как «Пайтон». Однако, среди русскоязычных програмистов укоренилось произношение «Питон».
Логотип
На логотипе изображены две змеи, образующие квадрат с выпуклым центром, это часто вводит в заблуждение пользователей, вынуждая ассоциировать название языка с рептилией.
Логотип создал брат создателя языка, Юст ван Россум — программист и шрифтовой дизайнер.
Даты релизов
- В феврале 1991 исходный код языка был опубликован на alt.sources.
- В 2000 году вышла в релиз вторая версия Python. В неё добавили много важных инструментов, включая поддержку Юникода и сборщик мусора.
- 3 декабря 2008 в релиз вышла третья версия Python, которая является основной до сих пор. Многие особенности языка были переделаны и стали несовместимы с предыдущими версиями.
- Официально поддержка второй версии языка прекращена в 2020 году.
Особенности программирования на Python
Простой язык, легкий и доступный в изучении
У Python короткий и выразительный синтаксис, особенно в сравнении с такими императивными языками, как C++, Java, C#. Изюминкой синтаксиса является то, что вложенность обозначается отступами слева, а не фигурными скобками или другими знаками. Можно сказать, что благодаря этому язык диктует хороший стиль оформления кода. Так же существует единый стандарт оформления (PEP-8) и во многих средах программирования можно привести код к этому стандарту при помощи нажатия одной комбинации клавиш.
Простота отчасти обусловлена тем, что Питон написан на основе языка ABC, который использовался для обучения программированию.
Бесплатный и с открытым кодом
Питон можно абсолютно свободно использовать в любом проекте, даже в коммерческом. То, что у этого языка открытый исходный код, а на его будущее сильно влияет мнение широкой общественности – дополнительные драйверы развития.
Портативность
Программа, написанная на Пайтоне, может быть запущенна почти на любой операционной системе. Перенести скрипт с одной платформы на другую – дело нескольких кликов.
Масштабируемый и встраиваемый
Python позволяет с лёгкостью использовать код, написанный на других языках (особенно, на C). Это даёт возможность ускорить Вашу программу в критически важных местах.
Высокоуровневый, интерпретируемый язык
Язык берёт на себя многие нюансы низкого уровня. Главные из них это «сборка мусора», работа с памятью, работа с конкурентностью. Это освобождает от головной боли, но и навязывает некоторые архитектурные решения.
Стандартные библиотеки для решения общих задач
Как уже говорилось, в Питоне есть обширная стандартная библиотека и множество сторонних библиотек. Для их установки и подключения предусмотрены удобные синтаксические конструкции и менеджер пакетов PIP.
Объектно-ориентированный
Несмотря на то, что здесь есть конструкции из функционального программирования, объектно-ориентированный подход в Python достиг своего апогея: всё, начиная от типа и заканчивая строковым литералом, является объектом.
Юмор в Питоне
В языке есть много «пасхалок». К примеру, если выполнить команду «import this», интерпретатор выведет Дзен Питона – своеобразный свод философских постулатов языка. Ещё интереснее становится если выполнить «import antigravity», «from __future__ import braces». Пробуйте!
Приложения на Python
Веб-программирование
Благодаря таким фреймворкам, как Django и Flask Питон прочно закрепился в мире программирования для веба. Этот язык используется на сайтах таких компаний как Instagram, Disqus, Mozilla, The Washington Times, Pinterest, YouTube, Google и др.
Научные и математические вычисления
У Python много библиотек для научных и математических вычислений. Вот короткий список основных из них: SciPy, Pandas и NumPy. Так же стоит отметить пакет Anaconda и Jupyter Notebook —мощный инструмент для разработки и представления проектов Data Science в интерактивном виде.
Также, язык часто используется в машинном обучении, анализе и сборе данных.
Прототипирование
Да, Питон медленный. Но он невероятно прост в применении. Благодаря этому на нём часто пишут прототипы и, если прототип доказывает свою жизнеспособность, переписывают некоторые части программы на более быстрых языках.
Почему стоит начать с Питона?
Простой язык для изучения программирования
Python используется для обучения программированию детей и новичков.
Не смотря на простоту синтаксиса, в Пайтоне реализованы многие прогрессивные идеи и возможности из разных подходов к программированию. В итоге Вы можете быстро и легко изучить функциональное, объектно-ориентированное, конкурентное, асинхронное мета-программирование и много чего ещё.
Не слишком строгий
Не нужно определять тип переменной в Python. Нет необходимости добавлять “;” в конце строки.
Python принуждает следовать методам написания читаемого кода (например, одинаковым отступам). Эти мелочи могут значительно облегчить обучение новичкам.
Первая программа на Python
По традиции, изучение любого языка программирования начинают с программы «Hello, World!». Её суть состоит в том, что на экран надо вывести надпись… «Hello, World!». Давайте сравним как выглядит текст этой простейшей программы на разных языках.