Что такое Python?
- Определение языка Python
- Преимущества Python
- Где используется Python?
- Установка Python и запуск скриптов
- Вопросы и задания для самоконтроля
Определение языка Python
Python (в рус. Питон или Пайтон) – это бесплатно распространяемый высокоуровневый интерпретируемый объектно-ориентированный язык программирования общего назначения с динамической типизацией и автоматическим управлением памятью, направленный на повышение скорости разработки, читаемости кода и его качества, а также на обеспечение переносимости написанных на нём программ.
Высокоуровневость языка означает, что он относительно прост и удобен для использования программистами, поскольку его синтаксис обычно состоит из сокращений обычных человеческих слов, например, print, and, values и т.д. Однако то, что хорошо для программистов, не совсем подходит для машин, т.к. напрямую процессор способен понимать только последовательности двоичных нулей и единиц. Поэтому для перевода высокоуровневых языков программирования в машинный код, т.е. понятный для устройств двоичный язык «нулей и единичек», используются специальные программы: интерпретаторы и компиляторы.
Интерпретатор – это специальная программа, которая выполняет интерпретацию, т.е. последовательно анализирует поступающий на ее вход исходный код программы и тут же оператор за оператором, строчка за строчкой выполняет ее, предварительно преобразуя каждый кусок исходного кода в машинный код. Если в ходе интерпретации будет обнаружена ошибка, интерпретатор прекратит дальнейшее выполнение программы.
Так вот, Питон как раз и является интерпретируемым языком программирования. Программы на нем могут выполняться на любом устройстве, в котором установлен интерпретатор языка. А поскольку Python имеет официальный сайт и распространяется бесплатно, то скачать и установить его на свой компьютер не составит особого труда даже для начинающего программиста.
Помимо Питона интерпретируемыми являются, например, языки JavaScript и PHP. Именно они использовались автором при создании данного сайта. Интерпретатор первого встроен во все известные браузеры, а интерпретатор второго имеется практически на всех серверах мира. Как следствие, веб-программистам также не приходится тратить много времени на их поиск и установку.
Хорошо, а какой интерпретатор используется на нашем компьютере, когда мы запускаем привычные нам файлы с расширением .exe? В том то и дело, что никакой! Все эти программы были написаны на компилируемых языках вроде C++, а потом обработаны компилятором и предоставлены нам для использования в готовом виде.
Компилятор – это специальная программа, которая выполняет компиляцию, т.е. еще до начала использования готовой программы полностью преобразует исходный код какого-либо языка программирования в понятный для процессора машинный код. Компиляция программы выполняется один раз, и если процесс компиляции завершается без ошибок, программу можно будет запустить на целевом устройстве без повторного компилирования даже при отсутствии на нем компилятора.
Как видим, главной задачей как интерпретатора, так и компилятора является преобразование кода языка высокого уровня в машинный код, хотя и делают они это по-разному.
Что касается динамической типизации, используемой в языке Python, то она избавляет программиста от необходимости объявлять тип переменной при ее создании, т.к. типы данных определяются интерпретатором автоматически во время выполнения программы. Поэтому переменной, например, можно сперва присвоить число (один тип данных), а затем в случае необходимости строку или какой-нибудь другой объект (другой тип данных). При этом Питон самостоятельно распределяет память под объекты программы и автоматически освобождает ее, когда объекты становятся ненужными.
Также следует добавить, что с самого начала Python проектировался как объектно-ориентированный язык программирования с поддержкой таких понятий, как полиморфизм, перегрузка операторов и множественное наследование. Однако использование ООП никогда не являлось обязательным, поскольку Питон поддерживает сразу оба стиля программирования: процедурный (через функции) и объектно-ориентированный (через классы и объекты). Все эти понятия мы обязательно рассмотрим позже в ходе дальнейшего изложения материала. Сейчас же продолжим знакомиться с Python в общих чертах.
Преимущества Python
Перечислим некоторые основные преимущества языка Python:
- распространяется совершенно бесплатно, при этом разрешается использование исходных кодов в коммерческих целях;
- действительно прост в изучении и доступен для понимания даже начинающим пользователям и ученикам старших классов;
- благодаря простоте и лаконичности синтаксиса обладает высокой скоростью разработки программ;
- является хорошо поддерживаемым и расширяемым языком программирования, поставляясь вместе с обширной стандартной библиотекой и по необходимости расширяясь за счет огромного количества дополнительных сторонних модулей и библиотек практически на все случаи жизни;
- хорошо переносим и надежно работает практически на всех основных платформах (т.е. обладает отличной кроссплатформенностью);
- легко соединяется с компонентами, которые написаны на других языках программирования, например, C++, что дает возможность использовать программный код Python в чужеродных языковых средах и системах.
Благодаря такому огромному набору плюсов Python по праву стал одним из самых популярных и любимых языков программирования в мире, заслуженно занимая первые и вторые строчки мировых рейтингов.
Где используется Python?
Как было сказано в определении, Python является языком программирования общего назначения, что предполагает наличие у него возможностей для решения широкого круга самых разнообразных задач. Перечислим наиболее популярные из них.
- Питон довольно успешно используется в backend-разработке сайтов. Для расширения возможностей языка в этой области используются фреймворки вроде Django, Pyramid или Flask.
- В Machine Learning и Data Science на Питоне пишут алгоритмы машинного обучения и анализа данных. В этом помогают библиотеки вроде Keras (открытая нейросетевая библиотека для глубокого обучения), OpenCV (компьютерное зрение) или Scikit-Learn (дата-майнинг и анализ).
- Популярен язык и в научных исследованиях. Здесь не обойтись без библиотек NumPy (поддержка математических функций для работы с матрицами и многомерными массивами), Matplotlib (визуализация 2D и 3D графики), SciPy (целый арсенал для выполнения инженерных и научных расчетов).
- В системном администрировании Python широко применяется для автоматизации рутинных задач. К слову, он по умолчанию установлен на все серверы с ОС Linux.
- В компьютерных играх на Python пишут скрипты для взаимодействия персонажей, запуска сцен, обработки событий, реализации пользовательского интерфейса. Примерами могут служить многопользовательские игры вроде World of Tanks, EVE Online или Battlefield 2.
- Полезен Python и для тестировщиков, т.к. он хорошо подходит для написания автоматических тестов. С его помощью реализовано значительное число готовых фреймворков, например, PyTest, Unittest, Behave.
- Также на Python разрабатывают практически любые десктопные и значительно реже мобильные приложения. В этой области используются, например, библиотеки PyQt (разработка настольных приложений) или Kivy (разработка мобильных приложений).
Как видим, Python действительно очень востребован в сфере разработки программного обеспечения. Не удивительно, что его используют такие всемирно известные гиганты как Nasa, Google, Facebook, Intel, IBM, iRobot, Hewlett-Packard и др.
Установка Python и запуск скриптов
Начиная с февраля 1991 года, когда сотрудник голландского института CWI и главный разработчик языка Гвидо ван Россум впервые опубликовал исходный текст, Python стал динамично развиваться и заслуженно завоевывать всемирную популярность. В итоге спустя три десятилетия в октябре 2022 года было объявлено о выходе Python версии 3.11. Именно ее реализации и выше мы будем изучать в данном учебнике. Итак, начнем.
Перед тем, как запускать программы, написанные на Python, необходимо скачать и установить интерпретатор языка, посетив для этого официальный сайт. Сами программы можно писать даже в обычном блокноте, но для эффективного создания, тестирования и сопровождения python-проектов лучше вооружиться какой-нибудь интегрированной средой разработки (от англ. IDE – Integrated development environment). Среди наиболее популярных и бесплатных IDE, подходящих для разработки на Python, можно выделить следующие.
- Spyder – хороший многофункциональный бесплатный вариант как для начинающих разработчиков, так и состоявшихся профессионалов. Есть возможность переключить интерфейс на русский язык (Tools -> Preferences -> Application -> Advanced settings). Подходит для Windows, macOS, Linux.
- PyCharm – отличный вариант как для начинающих, так и продвинутых программистов. Данная IDE имеет простой и понятный интерфейс и, кроме того, изначально адаптирована под Python. Программа имеет только англоязычный интерфейс. Подходит для Windows, macOS, Linux.
- Visual Studio – мощная мультиязычная среда от Microsoft для профессионалов. Как не трудно догадаться, среда рассчитана на пользователей ОС Windows.
- Notepad++ – это не IDE, а лишь простой свободный текстовый редактор с открытым исходным кодом для ОС Windows. Прост в использовании и настройке, есть возможность переключить интерфейс на русский язык.
Какую бы IDE вы не выбрали, после установки и первичной настройки среды вы с легкостью сможете начать писать, редактировать и тестировать код на языке Python.
Что касается самостоятельной установки интерпретатора, то скачать последнюю версию Python можно на официальном сайте python.org.
Перед загрузкой интерпретатора внимательно ознакомьтесь с информацией на странице загрузки. Убедитесь, что скачиваемая версия интерпретатора подходит для версии вашей операционной системы. Например, интерпретатор версии 3.9.2 не будет корректно работать под управлением ОС Windows 7 и более ранними версиями этой операционной системы. О чем жирным шрифтом предупреждается на странице загрузки.
После загрузки и установки интерпретатора в нужный вам каталог файлы с исходным python-кодом станут доступны для запуска. Такие файлы принято сохранять с расширением .py. Запустить их можно, например, обычным кликом мыши по ярлыку файла или с помощью командной строки операционной системы, использовав команду «python script_name.py» (для открытия командной строки в ОС Windows нажмите комбинацию клавиш Win+R, после чего можете открыть консоль, введя на выполнение команду cmd). Во втором случае возможно придется заменить слово «python» на полный путь к исполняемому файлу интерпретатора, например, «C:\Python\Python311\python.exe script_name.py», если в ходе установки вы не добавили Python в переменную окружения PATH (можете переустановить интерпретатор, не забыв поставить галочку напротив «Add Python.exe to PATH»).
Стоит добавить, что в комплекте с интерпретатором поставляется и собственная IDE, которую в Windows можно легко найти в меню «Пуск» под именем IDLE (после имени в скобках дополнительно указывается версия Python). В ней удобно запускать и тестировать короткие фрагменты исходного кода.
Более подробно процесс установки интерпретатора Python и запуск скриптов в ОС Windows 10 описан в нашей статье здесь.
Вопросы и задания для самоконтроля
1. Какие из представленных утверждений верны для Python: распространяется бесплатно, компилируемый язык программирования, тип переменной объявлять не нужно, объектно-ориентированный язык программирования, низкоуровневый язык, язык программирования общего назначения, интерпретируемый язык программирования, обладает высокой скоростью разработки? Показать решение.
Ответ. Для Python верны утверждения: распространяется бесплатно, тип переменной объявлять не нужно, объектно-ориентированный язык программирования, язык программирования общего назначения, интерпретируемый язык программирования, обладает высокой скоростью разработки.
2. Назовите хотя бы три основных причины, по которым программисты выбирают Python? Показать решение.
Ответ. Бесплатный, простой в изучении, хорошо поддерживается сообществом, обладает высокой скоростью разработки, хорошо переносим, легко расширяем, может использоваться в одной программе совместно с другими языками.
3. Какие задачи можно решать с помощью Python? Показать решение.
Ответ. Веб-разработка, машинное обучение, обработка данных, системное администрирование, научные исследования, создание настольных приложений и вообще любые задачи, которые можно решить при помощи компьютера.
4. Чем компилятор отличается от интерпретатора? Показать решение.
Ответ. Компилятор преобразует сразу весь исходный код в машинный. Если в коде будут присутствовать
ошибки, то программа не скомпилируется. Компиляция выполняется только один раз, после чего компилятор больше не нужен, а программу можно будет
использовать на целевом устройстве многократно.
Интерпретатор же транслирует исходный код в машинный по мере его поступления во время работы программы. При чем делает он это каждый раз, когда
программа запускается. В случае наличия в коде ошибки, интерпретатор прекратит дальнейшее выполнение программы. Также стоит помнить, что программы
будут запускаться только на устройствах с установленным интерпретатором языка. Так что, если вы еще не установили интерпретатор языка
Python, сделайте это!
5. Как создать файл с исходным кодом Python? Показать решение.
Ответ. Для этого нужно открыть любой текстовый редактор, создать в нем новый файл, записать туда требуемый исходный код, например, print('Привет, Мир!'), сохранить файл с расширением .py. После этого файл можно будет запускать на исполнение любым удобным способом, например, двойным кликом по ярлыку файла. Надеюсь, что интерпретатор вы уже установили. Добро пожаловать в мир Пайтона!
Быстрый переход к другим страницам
- Что такое Python?
- Синтаксис Python
- К содержанию учебника