В статье рассмотрены особенности языка программирования высокого уровня Python, проведено сравнение с другими популярными языками, выделены преимущества языка. Приведены примеры решения задач на Python.
Ключевые слова: программирование, языки программирования, Python.
Python — один из самых популярных языков в мире, и его популярность все растет. В рейтинге TIOBE за январь 2020 года он занял третье место [1].
Python — скриптовый язык общего назначения. Скриптовые языки обычно используются для небольших задач, но Python никак не вписывается в эти рамки. В отличие, например, от JavaScript, сфера применения Python не ограничивается веб-разработкой.
Этот язык программирования:
– Интерпретируемый. Это значит, что код в Python не переводится в машинный код, а выполняется программой-интерпретатором. Благодаря этому код в Python запустится на любой платформе, на которой установлен интерпретатор. Из минусов — код обрабатывается не заранее, а в процессе, а это снижает скорость.
– Объектно-ориентированный. Язык, созданный по модели объектно-ориентированного программирования. В ней существуют классы и объекты. Классы — это типы данных, а объекты — представители классов. Возможно самостоятельное их создание, задание имени и присвоение свойств и операций, которые с ними можно выполнять. Это не значит, что на Python программирование осуществляется только по этой модели, он поддерживает и функциональное, и императивное программирование.
– Поддерживающий строгую динамическую типизацию. Типы переменных определяются после запуска программы, а не при компиляции [2, 3].
Сравнение Python с другими языками программирования по разным параметрам приведены в таблице 1 [4, 5].
Таблица 1
Сравнительная характеристика языков программирования
ЯП |
Особенности |
Java |
Python требует меньше времени для разработки, хотя ожидается, что он будет работать медленнее, чем программы Java |
В Python высокоуровневые типы данных и их динамическая типизация программы короче, чем программы Java |
|
Perl |
Хотя оба эти языка во многом схожи, Perl поддерживает общие прикладные задачи, такие как создание отчетов, сканирование файлов и т. д. В то время как Python поддерживает общие методологии программирования, такие как проектирование структуры данных и ООП программирование, для программистов, переводящих язык в читаемый код. |
PHP |
Python имеет легко читаемый код, в то время как PHP имеет больше синтаксиса из C / C ++ и Perl |
В Python классы широко используются в стандартной библиотеке, в то время как PHP имеет SPL, полностью основанный на классах |
|
Python поддерживает структурированную обработку исключений, в то время как большинство функций PHP не используют исключения для сообщений об ошибках |
|
Возможности разработки в Python предоставляются дополнением, в то время как в PHP оно встроено |
|
Python поддерживает основные структуры GUI |
|
Ruby |
По сравнению с Ruby, Python обладает большим набором структур данных, внутренних функций, лучшей обработкой пространства имен и использованием модулей и итераторов |
Python поддерживает множественное наследование, а Ruby — нет |
|
Чтобы закрыть все области, Ruby требуется «end» или «}», в то время как в Python используется только пробел |
|
Ruby предпочтительнее для веб-разработки и функционального программирования, а Python для академического и научного программирования |
|
C++ |
Код Python значительно короче, чем большинство других языков программирования, таких как C или C ++ |
Python — это динамически типизированный язык, а C ++ — статически типизированный язык |
|
JavaScript |
Python выполняется на стороне сервера. JavaScript на стороне клиента |
Python использует отступы и пробелы. JavaScript для обозначения блоков кода использует фигурные скобки |
К достоинствам Python, облегчающим решение задач и позволяющим рекомендовать данный язык для использования при подготовке к олимпиадам по информатике, можно отнести:
- Наличие длинной арифметики. Длинная арифметика — набор алгоритмов для поразрядной работы с числами произвольной длины. Она применяется как с относительно небольшими числами, превышающими ограничения типа long в несколько раз, так и с по-настоящему большими числами (чаще всего до 10100000).
- В Python существуют десятки встроенных функций и классов, сотни инструментов, входящих в стандартную библиотеку Python, и тысячи сторонних библиотек на PyPI. Например, позицию максимальную элемента в списке в Python можно найти, используя комбинацию двух встроенных функций max () (нахождение максимального элемента в списке) и index () (нахождение индекса первого вхождения данного элемента в список).
Приведем пример решения задачи на двух языках программирования Python и Pascal.
Задача: Дан одномерный массив, состоящий из n целых чисел. Найти индексы пары элементов массива, чья разность максимальна.
Решение на Python:
Python — один из лучших языков для начинающих. Он гибкий, почти «всепрощающий», и у него минималистичный синтаксис. В работе на Python не придется беспокоиться о тонкостях работы с памятью и указателями (как, например, в C++), зато можно сразу приступить к программированию в дружелюбной среде. А еще Python подробно пишет, где в коде ошибка и какая, что очень удобно при написании программ [6].
Литература:
- TIOBE Index for April 2020. — URL: https://tiobe.com/tiobe-index/ (датаобращения 30.04.2020).
- Златопольский Д. Основы программирования на языке Python. — М.: ДМК Пресс, 2019. — 286 с.
- Косицин Д. Ю. Язык программирования Python: учебно-методическое. пособие. — Минск: БГУ, 2019. — 136 с.
- Гафияк А. и др. Области применения языки программирования приложений Python и Ruby // Modernengineeringandinnovativetechnologies. — 2019. — №. 07–03. — С. 74–77.
- Грузин Н. А. Сравнение языков программирования C++ и Python // ModernScience. — 2020. — №. 2–1. — С. 343–348.
- Низамов А. А., Петрова Н. К. Сравнительный анализ языков Python и С++ для обучения студентов программированию // ModernScience. — 2020. — №. 1–1. — С. 322–325.