Почему python называют интерпретируемым языком программирования
Перейти к содержимому

Почему python называют интерпретируемым языком программирования

  • автор:

Что такое Python и почему вы захотите его изучить?

  • img

    Рейтинг языков программирования

    Как думаешь, какой язык программирования сейчас самый популярный? Если погуглить, то окажется, что это Python.

    Использование Python

    А почему так, мы сейчас расскажем и покажем. Начнем с произношения — как его называть? Питон? Писон? Пистон? Можно и так, но правильно будет Пайтон, потому что его создатель Гвидо Ван Россум, назвал его в честь популярной комедийной группы Монти Пайтон, а точнее их шоу “Летающий цирк Монти Пайтона”, так что чешуйчатые тут не причем. Почему мы слышим про Python из каждого утюга? В чем секрет его популярности? Дело в том, что он используется не только разработчиками, а еще очень популярен среди математиков, аналитиков, ученых, сетевых инженеров, сисадминов, хакеров и даже бухгалтеров. Для программиста, такое большое сообщество — это гигантский плюс — не знаешь, как решить задачу? Спроси или найди готовое решение на Stack Overflow, там это уже проходили и обсудили. Популярность Python также объясняет его простота освоения. Даже если ты очень далек от айти, а при виде кода у тебя потеют ладошки, то чилл — изучение пайтона не составит для тебя большой сложности — он имеет простую структуру и синтаксис. А все благодаря его философии, которая заложена в основу языка:

    • Красивое лучше, чем уродливое.
    • Явное лучше, чем неявное.
    • Простое лучше, чем сложное.
    • Сложное лучше, чем запутанное

    Порог вхождения в Python низкий, потому что это очень дружелюбный для новичков язык программирования

    Пайтон применяют для самых разных задач: анализ данных и их визуализация, искусственный интеллект, машинное обучение, автоматизация процессов, да что угодно!

    Теперь чутка техники: Python это высокоуровневый интерпретируемый язык программирования общего назначения. Не пугайся, все просто. Смотри:

    Высокоуровневый означает, что тебе не нужно в деталях знать, как работает компьютер. Это как со смартфоном — тебе не нужно понимать как работает транзистор и что такое “лавинный пробой”, чтобы послушать на нем треки. Ну и по сравнению с другими языками, работа с памятью происходит автоматически, нам не нужно предварительно выделять ее и освобождать — спасибо встроенному “сборщику мусора

    Интерпретируемый — когда ты допишешь на Python свой первый скайнет, его будет нужно преобразовать в машинный язык, который сможет понять компьютер. Да — да, компьютер сам по себе твою писанину не поймет. Именно для этого используется интерпретатор Python, который при выполнении программы превращает написанный тобой код построчно, по одной за раз, в машинный код. А компилируемые языки, такие как Java, используют компилятор, который компилирует весь исходный код целиком перед выполнением твоей программы.

    Общего назначения означает, что использовать Python можно в различных областях, ну как мы уже и говорили: веб, десктоп и мобильные приложения, тестирование, работа с данными, работа с большими данными (big data), искусственный интеллект и машинное обучение, автоматизация и даже игры на нем писать можно!

    Так это вроде у всех есть, нет? Неа, например есть целевые языки, такие как SQL, который можно использовать только для запроса данных из реляционных баз данных.

    Пайтон является объектно-ориентированным языком (ООП) программирования. Если кратко, то ООП — это когда вся программа рассматривается как набор взаимодействующих друг с другом объектов, где каждый объект имеет свои свойства и поведение.

    А если ты уже прогаешь на другом языке, то смотри, что в пайтоне особенно круто: он строго типизированный — это означает, что значения переменных не будут неожиданно изменяться

    Строго типизированный

    Но при этом динамически типизированный, следовательно нам не нужно указывать тип переменной каждый раз.

    Динамически типизированный

    А еще: забудь про точки с запятой! Вместо этого тут используются отступы, чтобы определить блоки кода. И да, фигурные скобки в этом случае, как видишь, тоже не нужны.

    Отступы

    Также стоит заметить то что пайтон это кроссплатформенный язык программирования, что значит что мы можем писать и запускать свой код на Windows, Linux, MacOS и прочих!

    Ну и не в последнюю очередь благодаря своей популярности, Python имеет огромную экосистему библиотек, фреймворков и инструментов которые упростят работу и расширят ваши возможности при написании кода.

    Для примера можно назвать популярные Tensorflow и PyTorch для машинного обучения, Django и Flask для веб приложений, Pandas для дата сайенса, Selenium для тестирования и NumPy для сложных вычислений. А для установки всех этих дополнительных крутых штук используется специальный менеджер пакетов, котороый называетися pip .

    Библиотеки Python

    Кстати, у нас есть курс по Python с нуля! Пройди бесплатный вводный урок, в котором ты напишешь свою первую программу, да еще и с графическим интерфейсом, после чего сможешь ее показывать всем вокруг и говорить “знаете, я и сам в каком-то роде тоже пайтон разработчик”

    Что такое Python?

    Python — это язык программирования, который широко используется в интернет-приложениях, разработке программного обеспечения, науке о данных и машинном обучении (ML). Разработчики используют Python, потому что он эффективен, прост в изучении и работает на разных платформах. Программы на языке Python можно скачать бесплатно, они совместимы со всеми типами систем и повышают скорость разработки.

    В чем заключаются преимущества языка Python?

    Язык Python имеет следующие преимущества:

    • Разработчики могут легко читать и понимать программы на Python, поскольку язык имеет базовый синтаксис, похожий на синтаксис английского.
    • Python помогает разработчикам быть более продуктивными, поскольку они могут писать программы на Python, используя меньше строк кода, чем в других языках.
    • Python имеет большую стандартную библиотеку, содержащую многократно используемые коды практически для любой задачи. В результате разработчикам не требуется писать код с нуля.
    • Разработчики могут легко сочетать Python с другими популярными языками программирования: Java, C и C++.
    • Активное сообщество Python состоит из миллионов поддерживающих разработчиков со всего мира. При возникновении проблем сообщество поможет в их решении.
    • Кроме того, в Интернете доступно множество полезных ресурсов для изучения Python. Например, вы можете легко найти видеоролики, учебные пособия, документацию и руководства для разработчиков.
    • Python можно переносить на различные операционные системы: Windows, macOS, Linux и Unix.

    Где применяется Python?

    Язык Python имеет несколько стандартных примеров использования при разработке приложений, в числе которых:

    Веб-разработка на стороне сервера

    Веб-разработка на стороне сервера включает в себя сложные серверные функции, с помощью которых веб-сайты отображают информацию для пользователя. Например, веб-сайты должны взаимодействовать с базами данных и другими веб-сайтами, а также защищать данные при их отправке по сети.

    Python полезен при написании серверного кода, поскольку он предлагает множество библиотек, состоящих из предварительно написанного кода для сложных серверных функций. Также разработчики используют широкий спектр платформ Python, которые предоставляют все необходимые инструменты для более быстрого и простого создания интернет-приложений. Например, разработчики могут создать «скелет» интернет-приложения за считанные секунды, потому что им не нужно писать код с нуля. Затем его можно протестировать с помощью инструментов тестирования платформы независимо от внешних инструментов тестирования.

    Автоматизация с помощью скриптов Python

    Язык скриптов — это язык программирования, который автоматизирует задачи, обычно выполняемые людьми. Программисты широко используют скрипты Python для автоматизации многих повседневных задач, среди которых:

    • Одновременное переименование большого количества файлов
    • Преобразование файла в другой тип файла
    • Удаление повторяющихся слов в текстовом файле
    • Выполнение базовых математических операций
    • Отправка сообщений электронной почты
    • Загрузка контента
    • Выполнение базового анализа журналов
    • Поиск ошибок в нескольких файлах

    Наука о данных и машинное обучение

    Наука о данных извлекает ценную информацию из данных, а машинное обучение (ML) позволяет компьютерам автоматически учиться на данных и делать точные прогнозы. Специалисты по работе с данными используют Python для решения следующих задач:

    • Исправление и удаление неверных данных (очистка данных)
    • Извлечение и выбор различных характеристик данных
    • Разметка данных добавляет данным значимые имена
    • Поиск статистической информации в данных
    • Визуализация данных с помощью диаграмм и графиков: линейных диаграмм, столбчатых диаграмм, гистограмм и круговых диаграмм

    Специалисты по работе с данными используют библиотеки Python ML для моделей машинного обучения и создания классификаторов, которые точно классифицируют данные. Классификаторы на основе Python используются в различных областях и применяются для выполнения таких задач, как классификация изображений, текста и сетевого трафика, распознавание речи и распознавание лиц. Специалисты по работе с данными также используют Python для глубокого обучения — передовой техники машинного обучения.

    Разработка программного обеспечения

    Разработчики программного обеспечения часто используют Python для различных задач разработки и программных приложений, среди которых:

    • Отслеживание ошибок в программном коде
    • Автоматическая сборка программного обеспечения
    • Управление программными проектами
    • Разработка прототипов программного обеспечения
    • Разработка настольных приложений с использованием библиотек графического пользовательского интерфейса (ГПИ)
    • Разработка игр: от простых текстовых игр до сложных видеоигр

    Автоматизация тестирования программного обеспечения

    Тестирование программного обеспечения — это процесс проверки соответствия фактических результатов программного обеспечения ожидаемым результатам, который позволяет убедиться, что программное обеспечение не содержит ошибок.

    • Разработчики используют среды модульного тестирования Python (Unittest, Robot и PyUnit) для тестирования написанных функций.
    • Тестировщики программного обеспечения используют Python для написания тестовых примеров для различных сценариев. Например, язык применяется для тестирования пользовательского интерфейса интернет-приложения, нескольких программных компонентов и новых функций.

    Разработчики могут использовать несколько инструментов для автоматического запуска тестовых скриптов. Эти инструменты известны как инструменты непрерывной интеграции / непрерывного развертывания (CI/CD). Тестировщики и разработчики программного обеспечения используют инструменты CI/CD (Travis CI и Jenkins) для автоматизации процесса тестирования. Инструмент CI/CD автоматически запускает тестовые скрипты Python и сообщает о результатах тестирования всякий раз, когда разработчики вносят новые изменения в код.

    Как развивался Python?

    Python разработан Гвидо Ван Россумом (Guido Van Rossum), программистом из Нидерландов. Он начал работу над языком в 1989 году в центре Centrum Wiskunde & Informatica (CWI). Изначально язык был полностью любительским проектом: Ван Россум просто хотел чем-то занять себя на рождественских каникулах. Название языка было взято из телешоу BBC «Летающий цирк Монти Пайтона», большим поклонником которого являлся программист.

    История версий Python

    • Гвидо Ван Россум опубликовал первую версию кода Python (версия 0.9.0) в 1991 году. Он уже включал в себя ряд полезных возможностей. Например, различные типы данных и функции для обработки ошибок.
    • В версии Python 1.0, выпущенной в 1994 году, были реализованы новые функции для простой обработки списка данных: сопоставление, фильтрация и сокращение.
    • Python 2.0 был выпущен 16 октября 2000 года с новыми полезными функциями для программистов, такими как поддержка символов Unicode и упрощенный способ циклического просмотра списка.
    • 3 декабря 2008 года вышел Python 3.0. Эта версия включала функцию печати и дополнительную поддержку деления чисел и обработки ошибок.

    Каковы особенности Python?

    Язык Python уникален благодаря следующим особенностям:

    Интерпретируемый язык

    Python является интерпретируемым языком, то есть он выполняет код построчно. Если в коде программы присутствуют ошибки, она перестает работать. Это позволяет программистам быстро найти ошибки в коде.

    Простой в использовании язык

    Python использует слова, подобные словам английского языка. В отличие от других языков программирования, в Python не используются фигурные скобки. Вместо них применяется отступ.

    Язык с динамической типизацией

    Программистам не нужно объявлять типы переменных при написании кода, потому что Python определяет их во время выполнения. Эта функция позволяет писать программы на Python значительно быстрее.

    Язык высокого уровня

    Python ближе к естественным языкам, чем ряд других языков программирования. Благодаря этому программистам не нужно беспокоиться о его базовой функциональности, например об архитектуре и управлении памятью.

    Объектно-ориентированный язык

    Python рассматривает все элементы как объекты, но также поддерживает другие типы программирования (например, структурное и функциональное программирование).

    Что такое библиотеки Python?

    Библиотека — это набор часто используемых кодов, которые разработчики могут включать в свои программы Python, чтобы не писать код с нуля. По умолчанию в Python доступна стандартная библиотека, которая содержит большое количество многократно используемых функций. Кроме того, доступно более 137 000 библиотек Python для различных задач, в числе которых интернет-разработка, наука о данных и машинное обучение (ML).

    Какие библиотеки Python наиболее популярны?

    Matplotlib

    Разработчики используют Matplotlib для отображения данных в высококачественной двух- и трехмерной (2D и 3D) графике. Данная библиотека распространена при решении научных задач. С помощью Matplotlib данные можно визуализировать в виде различных диаграмм (например, столбчатых и линейных). Также можно строить несколько диаграмм сразу, а графику — переносить на любые платформы.

    Pandas

    Pandas содержит оптимизированные и гибкие структуры данных, которые можно использовать для управления данными временных рядов и структурированными данными, такими как таблицы и массивы. Например, Pandas можно использовать для чтения, записи, объединения, фильтрации и группировки данных. Также данная библиотека широко применяется в науке о данных, анализе данных и задачах машинного обучения.

    NumPy

    NumPy — это популярная библиотека, используемая разработчиками для простого создания массивов и управления ими, а также управления логическими фигурами и выполнения операций линейной алгебры. NumPy поддерживает интеграцию со многими языками. Например, C и C++.

    Requests

    Библиотека Requests содержит полезные функции, необходимые для веб-разработки. Их можно использовать для отправки HTTP-запросов, добавления заголовков, добавления параметров URL, добавления данных и выполнения многих других задач, связанных с интернет-приложениями.

    OpenCV-Python

    OpenCV-Python — это библиотека, используемая для обработки изображений при работе с машинным зрением. Она содержит множество функций обработки изображений, таких как одновременное чтение и запись изображений, преобразование двухмерной среды в трехмерную, а также захват и анализ изображений из видео.

    Keras

    Keras – это библиотека глубокой нейронной сети Python с отличными функциями обработки данных, визуализации и многого другого. Keras поддерживает множество нейронных сетей. Библиотека имеет модульную структуру, обеспечивающую гибкость при написании инновационных приложений.

    Что такое платформы Python?

    Платформы Python — это наборы пакетов и модулей. Модуль — это набор связанного кода, а пакет — это набор модулей. Разработчики могут использовать платформы Python для более быстрого создания приложений Python, поскольку им не нужно беспокоиться о низкоуровневых деталях (например, скорости обмена данных в веб-приложении) или том, как Python ускоряет работу программы. Python имеет два типа платформ:

    • Платформа с полным стеком включает почти все, что требуется для создания крупного приложения.
    • Микроплатформа – это базовая платформа, предоставляющая минимальные функциональные возможности для создания простых приложений Python. Также она предоставляет расширения, если приложениям требуются более сложные функции.

    Какие платформы Python наиболее популярны?

    Чтобы сделать свою разработку более эффективной, можно использовать несколько платформ Python сразу. В их числе:

    Django

    Django — одна из наиболее популярных платформ с полным стеком Python, которая используется для разработки крупных интернет-приложений. Она содержит несколько полезных функций, в числе которых веб-сервер для разработки и тестирования, движок шаблонов для frontend-разработки и различные механизмы безопасности.

    Flask

    Flask – это микроплатформа для разработки небольших интернет-приложений. К ее особенностям относятся сильная поддержка со стороны сообщества, качественно составленная документация, движок шаблонов, модульное тестирование и встроенный веб-сервер. Также платформа содержит расширения для поддержки валидации, уровни отображения базы данных и веб-безопасность.

    TurboGears

    TurboGears – это платформа, предназначенная для более быстрого и простого создания интернет-приложений. Ниже представлены ее основные возможности:

    • Определенная структура таблиц базы данных
    • Инструменты для создания и управления проектами
    • Движок шаблонов для создания баз данных
    • Движок шаблонов для frontend-разработки
    • Механизмы обеспечения веб-безопасности
    Apache MXNet

    Apache MXNet – это быстрая, гибкая и масштабируемая платформа глубокого обучения для создания исследовательских прототипов и приложений глубокого обучения. Она поддерживает несколько языков программирования, включая Java, C++, R и Perl. Платформа содержит богатый набор инструментов и библиотек для разработчиков. Например, на ней можно найти книгу по интерактивному машинному обучению (ML), наборы инструментов машинного зрения и модели глубокого обучения для обработки естественного языка (NLP), в том числе текста и речи.

    PyTorch

    PyTorch – это платформа для машинного обучения, созданная на основе библиотеки Torch, еще одной библиотеки машинного обучения с открытым исходным кодом. Разработчики используют ее в NLP, робототехнике и машинном зрении для поиска важной информации в изображениях и видео. Также платформа используется для запуска этих приложений на процессорах и графических процессорах.

    Что такое Python IDE?

    Интегрированная среда разработки (IDE) — это программное обеспечение, которое предоставляет разработчикам инструменты для написания, редактирования, тестирования и отладки кода.

    Какие Python IDE наиболее популярны?

    PyCharm

    PyCharm – результат трудов JetBrains, чешской компании по разработке программных инструментов. У программы имеется как бесплатная версия для небольших приложений, так и платная профессиональная версия, подходящая для создания крупных приложений Python со следующим набором функций:

    • Автоматическое завершение и проверка кода
    • Обработка и быстрое устранение ошибок
    • Чистка кода без изменения функциональных возможностей
    • Поддержка платформ интернет-приложений, таких как Django и Flask
    • Поддержка других языков программирования, таких как JavaScript, CoffeeScript, TypeScript, AngularJS и Node
    • Научные инструменты и библиотеки, такие как Matplotlib и NumPy
    • Возможность запуска, отладки, тестирования и развертывания приложений на удаленных виртуальных машинах
    • Отладчик для поиска ошибок в коде, профилировщик для выявления проблем с производительностью и средство запуска модульных тестов
    • Поддержка баз данных
    IDLE

    Интегрированная среда разработки и обучения (IDLE) – это интегрированная среда разработки Python, установленная по умолчанию. Среда разработана только на Python с использованием набора инструментов Tkinter GUI и имеет следующие особенности:

    • Совместимость со множеством операционных систем, таких как Windows, Unix и macOS
    • Командное окно для запуска команд и отображения вывода
    • Многооконный текстовый редактор с подсветкой синтаксиса кода и автозавершением
    • Встроенный отладчик
    Spyder

    Spyder – это IDE с открытым исходным кодом, которую используют многие специалисты и аналитики данных. Она применяется для всесторонней разработки с использованием функций расширенного анализа данных, визуализации и отладки. Среда имеет следующие особенности:

    • Редактор кода, поддерживающий несколько языков
    • Интерактивная консоль IPython
    • Базовый отладчик
    • Научные библиотеки, такие как Matplotlib, SciPy и NumPy
    • Возможность исследования переменных в коде
    • Возможность просмотра документации в режиме реального времени
    Atom

    Atom – это бесплатный редактор, разработанный GitHub, который поддерживает кодирование на многих языках программирования, в том числе Python. Atom позволяет напрямую работать с GitHub — веб-сайтом, на котором можно централизованно хранить свой код. Atom имеет следующие особенности:

    • Совместимость со многими операционными системами
    • Простая установка или создание новых пакетов
    • Ускоренное автозавершение кода
    • Возможность поиска файлов и проектов
    • Простая настройка интерфейса

    Что такое Python SDK?

    Пакет средств разработки ПО (SDK) — это набор программных инструментов, который позволяет создавать программные приложения на определенном языке. Большинство SDK предназначены для разных аппаратных платформ и операционных систем. Python SDK включает в себя множество инструментов, таких как библиотеки, примеры кода и руководства для разработчиков, которые помогают при написании приложений.

    Что такое AWS PyCharm?

    Набор инструментов AWS для PyCharm – это подключаемый модуль для PyCharm IDE, упрощающий создание, отладку и развертывание приложений Python на AWS. AWS Toolkit for PyCharm значительно упрощает начало разработки на Python. Он имеет ряд полезных особенностей для разработчиков, в числе которых руководства по началу работы, пошаговая отладка и развертывание IDE.

    Что такое Boto3 в Python?

    Boto3 — это SDK AWS для Python. Его можно использовать для создания, и настройки сервисов AWS –Amazon Elastic Compute Cloud (EC2), Amazon Simple Storage Service (S3) и Amazon DynamoDB – а также управления ими. Boto3 имеет два типа API-интерфейсов: низкоуровневые API-интерфейсы и API-интерфейсы ресурсов для разработчиков.

    Подробное описание языка Python для начинающих

    Python — красивый, лаконичный и многофункциональный язык. Давайте пробежимся по фундаменту Python. Статья подойдёт для начинающих.

    Начинать изучение чего-либо не имея базового представления о фундаментальных основах — глупо. И принцип «по ходу разберёмся» здесь не работает так как «по ходу» вы просто не уйдёте дальше простых домашних проектов.

    Изучать программирование «до того, как это стало мэйнстримом» было намного сложнее, чем сейчас, по одной просто причине: никто не разжёвывал и не делил информацию на важную «вам это никогда не понадобится», не было обучающих экспресс уроков и интенсивов, где за 4 часа пишут свой пет-проект. Сейчас мы имеем большой массив так называемых разработчиков которые успешно выполняют поставленные им задачи, но матчасть знают поверхностно.

    Именно поэтому давайте пробежимся по фундаменту такого простого но, как оказалось, загадочного языка Python. Пристегните ремни, господа.

    Что такое Python, как язык программирования

    В целом Python можно описать одним предложением: Высокоуровневый, интерпретируемый, объектно-ориентированный, императивный, строго типизированный язык общего назначения, который имеет динамическую типизацию.

    Теперь пойдём последовательно по каждому из пунктов.

    Высокоуровневый

    Языки программирования делятся на высокоуровневые и низкоуровневые. Низкоуровневые языки — языки, близкие к машинному коду или его конструкциям (например, байт-кодам). Классикой таких языков являются C, Assembler, Forth.

    Высокоуровневые языки — соответственно разрабатываются для удобства использования и скорости написания программы. В них применяются определённые абстракции — структуры данных, набор вспомогательных функций и так далее. Это такие языки как Python, JS, PHP, Go,

    Интерпретируемый

    Языки делятся на интерпретируемые(Python, JS, PHP, R, Ruby) и компилируемые (С, С++, Pascal). В первом случае программа выполняется специальной программой — интерпретатором, во втором программа сначала преобразуется в понятные компьютеру исполняемые файлы.

    Объектно-ориентированный

    Все языки также разделяются на процедурные, функциональные и объектно-ориентированные в зависимости от того, с помощью каких конструкций создаётся программа и как происходит её выполнение.

    В объектно-ориентированных языках основа это классы и экземпляры классов это равносильно типу и объекту этого типа. Выполнение условных задач или же просто работа программы строится на взаимодействии различных классов.

    Python хоть и является объектно-ориентированным языком но также поддерживает и процедурное программирование это значит, что программу можно написать без единого класса.

    В основе функциональных языков лежит отличная от предыдущих вычислительная система, называемая лямбда-исчисление, которая, тем не менее, эквивалентна машине Тьюринга, о чём доказана соответствующая теорема (спасибо моему преподавателю за этот абзац).

    Императивный

    Языки программирования также могут быть разделены на импертивные и декларативные. В императивном языке программист будет указывать последовательность команд для выполнения (это все языки программирования которые мы считаем «языками программирования» простите за тавтологию).

    Декларативные же языки в свою очередь ожидают от нас описания результата, который мы хотим получить в ходе выполнения запроса. Яркий пример декларативного языка это SQL (Stucted Query Language) или же структурированный язык запросов. Именно в нём мы описываем конкретный результат выполнения программы а не последовательность команд. Декларативными языками еще называют HTML, CSS, SVG, VRML, SQL, lex/VACC.

    Для понимания определений императивного и декларативного языка зададим задачу: построить дом.Императивный: Пойти в магазин —> Купить материалы —> Подготовить площадку —> Произвести строительство —> Заселиться.Декларативный: Я хочу новый дом.

    Строго (сильно) типизированный

    Что касается типизации. В сильно типизированном языке интерпретатор, при выполнении команд, не станет неявно приводить типы в отличии от слабо типизированных языков, в котором приведения типа могут происходить неявно.

    Общего назначения

    Языки делятся на языки общего назначения (Python, Java, Kotlin, C, Ruby) и специализированные (например предметно-ориентированные языки или DSL)

    DSL(предметно-ориентированный язык) — компьютерный язык, специализированный для конкретной области применения (в противоположность языку общего назначения, применимому к широкому спектру областей и не учитывающему особенности конкретных сфер знаний). Построение такого языка и/или его структура данных отражают специфику решаемых с его помощью задач. Является ключевым понятием языково-ориентированного программирования. Примеры таких языков Perl, SQL, HTML, Haskell, Verilog, AutoLisp

    Динамическая типизация

    Динамическая типизация предполагает, что в процессе выполнения команды переменная может содержать объекты различных типов. То есть мы объявляем переменную не указывая явно, какой тип данных в ней будет содержаться, и в процессе выполнения программы в одной переменной может побывать как текст так и число, а может и булево значение.

    Статическая типизация предполагает, что при задании переменной сразу указывается тип данных, который она может содержать.

    Отличительные особенности языка Python

    Интроспекция

    В программировании это это способность программы получать различную информацию об объектах во время работы программы. Если конкретно, то вы можете узнать какому классу принадлежит объект, с каким типом данных вы работаете в данный момент (помните про динамическую типизацию?) или список атрибутов и методов, доступных для указанного объекта

    Примеры полезных функций интроспекции в Python:

    • dir();
    • type();
    • hasattr();
    • id();
    • isinstance().

    Мультиплатформенность

    Нет, ну Java тоже, да. Но Python не отстает, он идёт, что называется, в коробке с Linux и SQL Server, интерпретатор Python можно легко поставить на Windows, не забыли про macOS, и iOS. Да вообще везде работает, в 8 раз медленней чем Swift на iOS, но работает.

    Встроенные паттерны проектирования

    В Python существуют свои встроенные паттерны проектирования, лучшим примером для понимания служат Декоратор и Итератор.

    Декоратор позволяет расширять функциональность без наследования. Чтобы разобраться в паттерне Итератор, следует просто изучить механизм работы итераторов и генераторов языка (о них я писал здесь)

    Обширный набор стандартных библиотек

    При использовании Core Python вы получаете «в коробке» большой набор полезных стандартных библиотек. Примером может служить библиотека для работы с БД SQLite, а также json, math, re, random, csv, html и много других.

    Читаемость языка

    Форматирование текста в Python является частью его синтаксиса и да, это те самые отступы (пробелы, табуляция кому как нравится), которые позволяют повышать читаемость кода.

    Заключение

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

    Частой проблемой, встречающейся среди разработчиков-любителей является поверхностность в изучении Python. Обучающие материалы, которые вы (мы) встречаете в интернете перефразируются сотни раз и скрывают важные, полезные черты и особенности языков программирования.

    Очень важно восполнять белые пятна в своих знаниях не только в начале своего обучения но и на протяжении всей своей карьеры иначе завтра фраза «дай дорогу молодым» станет для вас актуальной, и вы окажетесь за бортом.

    P.S.

    Язык Python назван в честь комик-группы Монти Пайтон а не в честь змеи.
    Создатель языка Гвидо Ван Россум

    PEP – Python Enhancement Proposals.

    PEP-8 – набор правил как стоит писать код.

    Следите за новыми постами по любимым темам

    Подпишитесь на интересующие вас теги, чтобы следить за новыми постами и быть в курсе событий.

    Почему python называют интерпретируемым языком программирования

    Скачай курс
    в приложении

    Перейти в приложение
    Открыть мобильную версию сайта

    © 2013 — 2023. Stepik

    Наши условия использования и конфиденциальности

    Get it on Google Play

    Public user contributions licensed under cc-wiki license with attribution required

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *