Немного о языке Python.

Разработка языка Python была начата в конце 1980-х годов сотрудником голландского института CWI Гвидо ван Россумом. Для распределённой ОС Amoeba требовался расширяемый скриптовый язык, и Гвидо начал писать Python на досуге, позаимствовав некоторые наработки для языка ABC (Гвидо участвовал в разработке этого языка).

Гуидо обожал телевизионную передачу Monty Python's Flying Circus (Летающий цирк питона Монти), и когда пришло время дать название своему языку, он выбрал имя Python. В 1991 г. после испытаний и экспериментов в узком кругу друзей и коллег по работе Python был размещен в домене общего доступа на суд широкой общественности. Впрочем, всё равно название языка чаще ассоциируют именно со змеёй, нежели с передачей.

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

Программисты также вольны модернизировать язык, не ставя в известность автора.

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

3 декабря 2008 г., после длительного тестирования, вышла первая версия Python 3. В Python 3. устранены многие недостатки архитектуры с максимально возможным (но не полным) сохранением совместимости со старыми версиями Питона. На сегодня поддерживаются обе ветви развития (Python 3.x и 2.x).

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

  • С, C++ - некоторые синтаксические конструкции (как пишет сам Гвидо ван Россум - он использовал наиболее непротиворечивые конструкции из С, чтобы не вызвать неприязнь у С-программистов к Python);
  • Fortran - срезы массивов, комплексная арифметика;
  • Java - модули logging, unittest, threading (часть возможностей оригинального модуля не реализована), xml.sax стандартной библиотеки, совместное использование finally и except при обработке исключений, использование @ для декораторов;

При этом, в отличие от многих портируемых систем, для всех основных платформ Python имеет поддержку характерных для данной платформы технологий (например, Microsoft COM/DCOM). Эталонной реализацией Python является интерпретатор CPython, поддерживающий большинство активно используемых платформ. Более того, существует специальная версия Питона для виртуальной машины Java - Jython, что позволяет интерпретатору выполняться на любой системе, поддерживающей Java, при этом классы Java могут непосредственно использоваться из Питона и даже быть написанными на Питоне. Также несколько проектов обеспечивают интеграцию с платформой Microsoft .NET, основные из которых - IronPython и Python.Net. Проект PyPy предлагает реализацию Питона на самом Питоне, что уменьшает затраты на изменения языка и постановку экспериментов над новыми возможностями.p>

Разработчики языка Python придерживаются определённой философии программирования, называемой "The Zen of Python" ("Дзен Питона", или "Дзен Пайтона"). Её текст выдаётся интерпретатором Питона по команде import this (работает один раз за сессию). Автором этой философии считается Тим Пейтерс.

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

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

Множество OpenSource проектов работает под поддержкой фреймворков Pyton. Например, набирающая популярность в Европе система OpenERP (openerp.com), или достаточно популярный фреймворк Django(www.djangoproject.com)

Если вы уже знакомы с основами программирования (Программирования на Си), то изучить Python не составит труда. Вам в помощь наш курс «Основы программирования на Python» .