Web-studio46.ru

Обучение и образование
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

Что такое Python: чем он хорош, где пригодится и как его выучить

Python — самый быстрорастущий язык программирования за последние несколько лет. Об этом говорит исследование StackOverflow за 2019 год. Давайте разберёмся, за что его любят разработчики и почему мы советуем начинающим программистам попробовать его в качестве первого языка.

Python просто понять и изучить

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

“Java” справляется в 5 строк, используем множество скобок.

“C” работает похоже, хоть строк и немного меньше:

Python использует одну понятную строку:

Конечно, это не значит, что так будет всегда. Есть программы посложнее, но в них всё ещё можно разобраться, если немного знать английский. Например, вот программа, которая умеет отправлять электронные письма:

редакция нетологии

У Python много готовых библиотек для решения задач

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

Pygame. Библиотека для создания небольших игр и мультимедийных приложений.

NumPy. Библиотека для работы с искусственным интеллектом и машинным обучением. Используется для сложных математических вычислений.

Pandas. Библиотека для работы с большими данными.

SQLAlchemy. Библиотека для работы с базами данных.

Django, Flask. Библиотеки для разработки серверной части приложений.

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

Python используют компании-гиганты

Многие известные нам компании и организации используют Python:

  • Spotify и Amazon используют Python для анализа данных и создания рекомендаций.
  • Walt Disney использует Python как скриптовый язык для анимации.
  • YouTube и Instagram целиком написаны на Python.
  • Если этого недостаточно, есть ещё NASA: их система автоматизации процессов WAS тоже создавалась средствами Python.

Python надолго останется популярным

Скорее всего, вы слышали о машинном обучении и больших данных. Хорошая новость — Python считается лучшим языком программирования для работы в этих областях. Вот что делают с его помощью:

  1. Собирают данные покупательской активности, строят гипотезы и находят новые точки роста компании.
  2. Разрабатывают алгоритмы машинного обучения. Например, Netflix написали свой рекомендательный сервис на Python.
  3. Автоматизируют рутинные задачи. Например, простой скрипт на Python может собрать все ссылки или картинки с указанного сайта и сохранить их в папку.

Python-разработчикам готовы платить

По данным калькулятора зарплат на сайте «Мой Круг», средняя зарплата младшего (Junior) Python-разработчика — примерно 60 000 рублей. В зависимости от региона, требований компании и умений кандидата, цифра может меняться. Python-разработчики среднего и высокого уровня (Middle и Senior) получают более высокие зарплаты.

Python — краткий обзор языка и его назначения

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

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

Один из самых популярных интерпретаторов языка – CPython, написанный на Си. Распространяется эта среда разработки бесплатно по свободной лицензии. Интерпретатор поддерживает большинство популярных платформ.

Питон активно развивается. Примерно раз в 2 года выходят обновления. Важной особенностью языка является отсутствие таких стандартов кодировки как ANSI, ISO и некоторых других, они работают благодаря интерпретатору.

Забавные подробности

У самих разработчиков языка присутствует определенное чувство юмора. Они разработали концепцию философии программирования на языке Python которая получила название «The Zen of Python» (Дзен Питона). По сути, это набор основных принципов, которые разработчики языка считают очень важными. Изучить их можно на сайте, либо получать по одной в случайном порядке раз в день при помощи запроса import this.

Язык программирования позаимствовал название у популярного в 70 годы шоу Monty Python’s Flying Circus. Но большая часть пользователей об этом не знают и ассоциируют название с пресмыкающимся. Одна из целей создателей Питона – сделать программирование простым и забавным.

Немного истории

Язык начал разрабатываться во второй половине 80-х г.г. прошлого века. Автором Питона стал программист из Нидерландов по имени Гвидо ван Россум. Изначально язык должен был стать объектно-ориентированным. Фактически, это был язык сценариев, т.е. скриптовый язык. В феврале 1991 года ван Россум опубликовал исходный код языка в одной из новостных групп.

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

В 2008 года появилось большое обновление языка – Python 3.0. Версия продукта известна так же под названием Py3k. В этой версии были устранены многие ключевые недоработки в архитектуре ядра. Что было важно – новая версия продукта сохранила полную совместимость с более старыми вариантами. Сегодня разработчиками поддерживается две линии — Python 3.x и 2.x

Как повлияли другие ЯП на развитие Питона

Питон – не самый «молодой» язык программирования, но и не слишком старый. К моменту его создания уже существовали такие «монстры», как Паскаль или Си. А потому при создании ЯП авторы старались взять лучшее из различных платформ для разработчиков. Фактически Python представляет из себя своеобразный «джем» удачных решений более чем из 8 различных языков. К примеру, байт компиляция появилась еще до создания Питона, но была очень удачна в него интегрирована.

Поддержка ОС

Питон поддерживает практически все распространенные операционные системы. Он может прекрасно работать на карманных компьютерах, так и на больших серверах. В случае, если платформа значительно устаревает, она исключается из поддержки ядра. К примеру, версии языка, начиная от 2.6, уже не работают с платформами Windows 95, 98 и ME. В случае необходимости можно воспользоваться более старыми версиями, отказавшись от применения современных инструментов языка. И тогда приложение будет работать в том числе с этими ОС. Для старых версий периодически выходят патчи. Язык также может поддерживать работу с виртуальной машиной Java.

Основные инструменты и возможности

ЯП имеет четко структурированное семантическое ядро и достаточно простой синтаксис. Все, что пишется на этом языке, всегда легко читаемо. В случае необходимости передать аргументы язык использует функцию call-by-sharing.

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

В 2018 году в Питоне были изменены некоторые ключевые термины, но это скорее упростило понимание. А потому проблем у разработчиков при изучении документации не возникает.

Читать еще:  Учить язык программирования с нуля

Выражения

Выражение в Питоне – это строка, содержащая набор операторов (команд) и операндов (переменных и констант), выполняющая определенную функцию.

Здесь операторами являются «=» (присвоить значение), математические символы сложения и умножения, а также команда «print» (вывод на экран).

Операнды – это переменные length, breadth и area, а также их значения (2 и 5).

Выражения – целые строки, которые могут содержать один или несколько операторов.

Интересные особенности выражений:

  • Для форматирования строк можно использовать «обратный слеш» ().
  • Благодаря структуре «лесенкой» язык очень удобен для проведения цепочечных сравнений.
  • Логические операторы очень просты с точки зрения синтаксиса, а потому считаются «ленивыми».
  • Удобно реализовано управление списками и прочими последовательностями. Есть индексация элемента в списке.

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

Типы данных

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

Самые важные типы:

  1. Числовые: целые, дробные, вещественные с плавающей точкой, комплексные.
  2. Логические: тип для хранения значений алгебры логики – «истина» или «ложь».
  3. Строковые: содержат символы Юникода, в том числе, html-код.
  4. Списки – упорядоченные массивы переменных.
  5. Кортежи – массив упорядоченных констант, т.е. значений, которые не могут изменяться в процессе работы.
  6. Множества – массивы неупорядоченных данных.
  7. Словари – специализированный массив, состоящий из пары – «ключ» — «значение».
  8. Байты, массивы байтов – поименованные области памяти для хранения изображений (jpg, gif и т.д.), pdf-документов и других файлов.

Здесь объектами считаются практически все конструкции. А потому собственные типы имеют, в том числе, классы, файлы или методы.

Имена

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

Программный интерпретатор получает доступ к 3-м пространствам имен и может отображать их по таким признакам:

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

Написание комментариев

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

  • Комментарий начинается с символа «#».
  • Для разбиения длинных логических строк на физические (повышения читабельности) применяют косую черту или обычные скобки ().
  • Строковые литералы заключаются в кавычки. Причем, они могут быть любыми – одинарными или двойными. Главное, чтобы выбранная пара относилась к одному типу.

Комментарии могут располагаться в отдельных строках или рядом с операторами, например:

z = 2.5 + 3j # Create a complex number

Русский язык и различные кодировки

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

После выполнения интерпретатором языка этой директивы, русский язык будет отображаться корректно и не доставит программисту никаких проблем. Более простой способ добиться того же результата – написать:

Интерпретатор прекрасно поймет, что вы от него хотите.

Приложение или библиотека?

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

Отладка кода

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

Документация pydoc

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

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

Например, help (os) вызовет помощь по библиотеке OS. А если вы не можете вспомнить название модуля, укажите конструкцию help (‘modules’), и вы получите на экран перечень всех стандартных модулей.

Вы также можете пользоваться возможностями pydoc для создания собственной документации. Если необходимо задокументировать новый модуль, в него добавляют директиву docstring.

Например, так будет документироваться модуль вычисления факториала числа:

После добавления такой подсказки, вызов help(factorial) будет возвращать текст, который вы указали в директиве, т.е. на экране вы получите информацию:

Таким образом документируются все объекты в Питоне и создается общая для всех разработчиков «быстрая подсказка».

Подведем итоги

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

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

Краткий перечень возможностей:

  • Любой описанный класс единовременно представляет из себя и объект.
  • Функция множественного наследования.
  • Поддержка виртуальных функций.
  • Возможность легко управлять именами скрывать их особыми метками.
  • Возможность жизнью объекта и распределение памяти.
  • Управление работы операторов как символьных, так и логических.
  • Возможность имитировать поле
  • Управление полями – как прямой, так и частичный доступ.
  • Контроль над самыми распространенными операциями. От глубокого до итерации по объекту.
  • Возможно создавать триггеры и классы.

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

Что такое Python и для чего он используется

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

В 2019 году Python стал самым популярным языком программирования, обогнав Java на 10%. Это обусловлено многими причинами, одна из которых — высокая оплата труда квалифицированных специалистов (около 100 тысяч долларов в год).

Язык программирования Python

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

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

Читать еще:  Как начать программировать с нуля c

Происхождение названия

Автор языка Python назвал его в честь британского комедийного шоу “Monty Python”, которое было популярно в начале 1970-х годов.

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

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

Питон или Пайтон?

Будь то название британского телешоу или английское звучание слова “змея”, Python правильно произносить, как Пайтон. Однако, около 80% Российского сообщества привыкли использовать слово “Питон”.

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

Логотип

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

Логотип создал брат автора, Юст ван Россум — программист и шрифтовой дизайнер. Он разработал как дизайн логотипа (две змеи), так и шрифт текста Flux Regular.

История создания

Язык начал разрабатывать программист, Гвидо ван Россумом, в конце 1980-х. На тот момент он работал в центре математики и информатике в Нидерландах.

Гвидо ван Россум увлекался работой с «железками» ещё со школьных лет, и хотя он не находил поддержки и одобрения у своих сверстников, это не помешало ему самостоятельно разработать язык программирования.

Россум работал над Python в свободное время, в качестве основы он взял язык программирования ABC, в разработке которого когда-то участвовал.

Этапы истории языка программирования Python:

  • В феврале 1991 исходный код языка был опубликован на alt.sources. Уже тогда язык придерживался объектно-ориентированного подхода, мог работать с классами, наследованием, функциями, обработкой исключений и всеми основными структурами данных.
  • В 2000 году вышла в релиз вторая версия Python. В неё добавили много важных инструментов, включая поддержку Юникода и сборщик мусора.
  • 3 декабря 2008 в релиз вышла третья версия Python, которая является основной до сих пор. Многие особенности языка были переделаны и стали несовместимы с предыдущими версиями. И хотя функциональность третьей версии ничем не уступает второй, развитие языка разделилось на две ветки. Кто-то продолжал использовать Python 2, чтобы поддерживать старые проекты, кто-то полностью перешёл на третью версию.

Дату смерти второй версии установили на 2015 год, однако, боясь не успеть перенести весь существующий код на Python 3, время жизни Python 2 продлили жизнь до 2020 года.

Python — простой язык

Синтаксис Питона всегда выделял его на фоне других языков программирования. Он не страдает избыточностью, схожесть синтаксиса с обычным английским позволяет понять код даже обычному пользователю, кроме того, программист пишет меньше строк кода, потому что нет необходимости использовать символы: «;», «<», «>». Вложенность обозначается отступами, что повышает читаемость кода и приучает новичков к правильному оформлению.

Python упрощает написание кода и делает разработку быстрой, всё потому что он обладает следующими особенностями:

  • Динамическая типизация. Программисту не нужно указывать тип переменных, язык присвоит его сам. Операнды разных типов, участвующие в одной операции, автоматически приводится к нужному по определённым правилам.
  • Удобный возврат нескольких значений функцией. Их можно перечислить через запятую и они автоматически преобразуются в список. Чтобы вернуть массив из функции, достаточно написать “ return имя_массива “. Не нужно выделять память и передавать указатели в функцию.
  • Автоматическое выделение памяти. Программисту не нужно самостоятельно выделять память под что-либо. С одной стороны это уменьшает контроль программиста над программой, с другой, разработка значительно ускоряется.
  • Сборщик мусора. Если объект становится бесполезным (на него перестаёт что-либо ссылаться), он автоматически удаляется сборщиком мусора. Сборщик мусора позволяет оптимизировано использовать память и не удалять бесполезные объекты вручную.
  • a, b = b, a. Эта строка меняет местами значения переменных, теперь то, что было в a, находится в b и наоборот. Такое возможно, потому что Питон сначала рассматривает переменные справа от знака “=” и помещает их в список, то же он делает с элементами слева от “=”, затем он связывает каждый элемент правого списка с левым. Таким способом можно обменивать значения не только двух переменных, но и трёх, пяти и так далее.
  • Привязка типа данных. Тип данных привязан к значению, а не к переменной. То есть значение — это какой-то объект с атрибутами, которые определяют его тип и другие характеристики, а переменная — просто ссылка на этот объект. Такой подход позволил обойтись без явного определения типов и значительно упростил повторное присваивание значения переменной (особенно, если тип нового значения отличен от начального).
  • Цикл for. Работать с массивами, списками и другими контейнерами в Питоне просто и удобно. Когда необходимо перебрать все его элементы, конструкция выглядит так: “ for x in контейнер: ” (перебор идёт от 0 до последнего элемента, его индекс можно обозначить как -1). Если нужно, чтобы прошло определённое количество циклов, пишут так: “ for x in range(1,9): ” (цикл будет выполняться со значениями x от 1 до 8).
  • Интерпретируемый язык. Написанный код не нужно компилировать, достаточно запустить его и получить результат. Более того, можно работать в интерактивном режиме и получать результат буквально после каждой операции.

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

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

Пример кода:

Популярность

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

Он собрал вокруг себя огромное сообщество разработчиков, по результатам опроса на Stackoverflow Python занял 7 место с почти 39% голосов.

Индекс TIOBE

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

Согласно индексу TIOBE Python занял 3 место с 9-ю процентами популярности. Он уступил лишь языкам Java и C.

Этот индекс основывает на количестве поисковых запросов, касающихся учебных материалов по языку.

По данным с PYPL Python занимает первое место с более чем 29% популярности и на 10% обгоняет Java.

statista.com

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

Согласно опросу более 85 тысяч респондентов, Python занимает 4 место, уступив таким языкам, как JS, языки разметки и SQL.

Читать еще:  Язык программирования python для чего используется

Скорость работы

Программисты часто задаются вопросом: “Не приведёт ли использование Python к снижению производительности?”. Не стоит делать какие-либо выводы без детального разбирательства.

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

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

Python позволяет писать достаточно быстрый код, однако может подводить в некоторых “узких” местах, которые и оказывают наибольшее влияние на производительность всего проекта. Чтобы не затянуть разработку и получить на выходе программу, работающую на высокой скорости, её структуру проектируют так, чтобы соотношение “быстродействие/время разработки” было максимальным.

Программисты используют приёмы, позволяющие нивелировать недостаточную скорость выполнения программ на Pyton:

  • Встраивание кода на С. С помощью такого приёма можно заметно повысить производительность, обычно на С пишут те участки кода, которые обрабатывают много запросов в единицу времени. Например, функцию, которая получает данные из одной базы данных, обрабатывает их и отсылает в другую, лучше написать на языке С, если объем проходящей информации достаточно большой.
  • Использование лучших алгоритмов и инструментов. Одну и ту же задачу можно решить по-разному. Во-первых, программист должен выбрать наиболее эффективный алгоритм, обеспечивающий лучшую производительность, например, для поиска элемента в отсортированном массиве можно перебирать его от начала до конца, в лучшем случае (элемент в начале массива) поиск выполнится быстро, в худшем (элемент в конце массива) — медленно. Эффективнее использовать методом деления пополам (двоичный поиск), который найдёт нужный элемент за минимальное количество итерация в массиве любой длины. Во-вторых, для реализации задачи нужно подбирать правильные инструменты. Например, если последовательность элементов строго определена и не изменяется, лучше использовать кортеж, а не список. Он требует меньше места, обрабатывается быстрее и защищён от случайных изменений.
  • Оптимизация интерпретатора. Скорость программ на Python сильно зависит от работы интерпретатора, одни конструкции работают быстрее, другие медленнее.

§1 Язык программирования Python

Общая характеристика языка

Официальная эмблема Python (зарегистрированная марка)

Python — мощный и простой для изучения язык программирования. В нём предоставлены удобные высокоуровневые структуры данных и простой, но эффективный подход к объектно-ориентированному программированию. Python интерпретируемый язык. Для запуска написанных программ требуется наличие интерпретатора CPython . Интерпретатор python и большая стандартная библиотека находятся в свободном доступе в виде исходных и бинарных файлов для всех основных платформ на официальном сайте Python http://www.python.org и могут распространяться без ограничений. Кроме этого на сайте содержатся дистрибутивы и ссылки на многочисленные модули третьих сторон и подробная документация.
Язык обладает чётким и последовательным синтаксисом, продуманной модульностью и масштабируемостью, благодаря чему исходный код написанных на Python программ легко читаем. Разработчики языка Python придерживаются определённой философии программирования, называемой «The Zen of Python». Её текст выдаётся интерпретатором по команде import this :

В переводе это звучит так:

  • Красивое лучше, чем уродливое.
  • Явное лучше, чем неявное.
  • Простое лучше, чем сложное.
  • Сложное лучше, чем запутанное.
  • Плоское лучше, чем вложенное.
  • Разреженное лучше, чем плотное.
  • Читаемость имеет значение.
  • Особые случаи не настолько особые, чтобы нарушать правила.
  • При этом практичность важнее безупречности.
  • Ошибки никогда не должны замалчиваться.
  • Если не замалчиваются явно.
  • Встретив двусмысленность, отбрось искушение угадать.
  • Должен существовать один — и, желательно, только один — очевидный способ сделать это.
  • Хотя он поначалу может быть и не очевиден, если вы не голландец.
  • Сейчас лучше, чем никогда.
  • Хотя никогда зачастую лучше, чем прямо сейчас.
  • Если реализацию сложно объяснить — идея плоха.
  • Если реализацию легко объяснить — идея, возможно, хороша.
  • Пространства имён — отличная штука! Будем делать их побольше!

Python — активно развивающийся язык программирования, новые версии выходят примерно раз в два с половиной года. Вследствие этого и некоторых других причин на Python отсутствуют стандарт ANSI, ISO или другие официальные стандарты, их роль выполняет CPython.

История создания языка

Разработка языка Python была начата в конце 1980-х годов сотрудником голландского института CWI Гвидо ван Россумом. Распределённой ОС Amoeba требовался расширяемый скриптовый язык для которой Гвидо ван Россум и создал Python. Новый язык позаимствовал некоторые наработки для языка ABC, который был ориентирован на обучение программированию. В феврале 1991 года Гвидо опубликовал исходный текст в ньюсгруппе alt.sources. Название языка произошло не от вида пресмыкающихся. Автор назвал язык в честь популярного британского комедийного телешоу 1970-х «Летающий цирк Монти Пайтона». Тем не менее эмблему языка изображают змеиные головы. После длительного тестирования, вышла первая версия Python 3.0. На сегодня поддерживаются обе ветви развития (Python 3.x и 2.x).

Гвидо ван Россум

Python создавался под влиянием множества языков программирования: Modula-3, С, C++, Smalltalk, Lisp, Fortran, Java, Miranda, Icon. Несмотря на то, что Python обладает достаточно самобытным синтаксисом, одним из принципов дизайна этого языка является принцип наименьшего удивления.

Стандартная библиотека

Богатая стандартная библиотека является одной из привлекательных сторон Python. Здесь имеются средства для работы со многими сетевыми протоколами и форматами Интернета. Существуют модули для работы с регулярными выражениями, текстовыми кодировками, мультимедийными форматами, криптографическими протоколами, архивами. Помимо стандартной библиотеки существует множество библиотек, предоставляющих интерфейс ко всем системным вызовам на разных платформах.
Для Python принята спецификация программного интерфейса к базам данных DB-API 2 и разработаны соответствующие этой спецификации пакеты для доступа к различным СУБД: Oracle, MySQL, PostgreSQL, Sybase, Firebird (Interbase), Informix, Microsoft SQL Server и SQLite.
Библиотека NumPy для работы с многомерными массивами позволяет достичь производительности научных расчётов, сравнимой со специализированными пакетами. SciPy использует NumPy и предоставляет доступ к обширному спектру математических алгоритмов. Numarray специально разработан для операций с большими объёмами научных данных.
Python предоставляет простой и удобный программный интерфейс Си API для написания собственных модулей на языках Си и C++. Такой инструмент как SWIG позволяет почти автоматически получать привязки для использования C/C++ библиотек в коде на Python. Инструмент стандартной библиотеки ctypes позволяет программам Python напрямую обращаться к динамическим библиотекам, написанным на Си. Существуют модули, позволяющие встраивать код на С/C++ прямо в исходные файлы Python, создавая расширения «на лету».
Python и подавляющее большинство библиотек к нему бесплатны и поставляются в исходных кодах. Более того, в отличие от многих открытых систем, лицензия никак не ограничивает использование Python в коммерческих разработках и не налагает никаких обязательств кроме указания авторских прав.

Сферы применения

Python — стабильный и распространённый язык. Он используется во многих проектах и в различных качествах: как основной язык программирования или для создания расширений и интеграции приложений. На Python реализовано большое количество проектов, также он активно используется для создания прототипов будущих программ. Python используется во многих крупных компаниях.
Python с пакетами NumPy, SciPy и MatPlotLib активно используется как универсальная среда для научных расчётов в качестве замены распространенным специализированным коммерческим пакетам Matlab, IDL и др.
В профессиональных программах трехмерной графики, таких как Houdini и Nuke, Python используется для расширения стандартных возможностей программ.

Ссылка на основную публикацию
Adblock
detector