Быстрый в изучении - мощный в программировании
Скрипт ИНВЕСТОР на Python

Попробуйте себя в качестве инвестора имея в помощники мощный алгоритм советника на Python...

Все уроки по PyQt5

PyQt5 реализован как комплект Python-модулей. Он включает в себя около 620 классов и 6000 функций и методов...

Скрипт отправки SMS через Python

Была задача отправить SMS-ки большому списку номеров телефона с уточнением цены за всю рассылку "До" ее отправки...

Archy

Пожалуй, самый простой способ запускать программы на языке Python - это

вводить инструкции непосредственно в командной строке интерпретатора, 

которая иногда называется интерактивной оболочкой. Запустить эту 

командную строку можно разными способами - в интегрированной среде разработки,

в системной консоли и так далее. Предположим, что интерпретатор установлен

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

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

вашей операционной системы. Например:

% python
Python 3.0.1 (г301:69561, Feb 13 2009, 20:04:18) [MSC v.1500 32 bit (Intel)] ...
Type "help", "copyright", "credits" or "license" for more information.

Далее...

Прежде чем двинуться дальше, я должен заметить, что внутренний поток 

выполнения, описанный в предыдущем разделе, отражает современную 

стандартную реализацию интерпретатора Python, которая в действительности не

является обязательным требованием самого языка Python. Вследствие этого

модель выполнения склонна изменяться с течением времени. Фактически уже

существуют системы, которые несколько меняют картину, представленную на

рис. Давайте потратим несколько минут, чтобы ознакомиться с наиболее

заметными изменениями. Далее...

Читатели, имеющие опыт работы с компилирующими языками 

программирования, такими как С и C++, могут заметить несколько отличий в модели 

выполнения Python. Первое, что бросается в глаза, - это отсутствие этапа сборки,

или вызова утилиты «make»: программный код может запускаться сразу же,

как только будет написан. Второе отличие: байт-код не является двоичным 

машинным кодом (например, инструкциями для микропроцессора Intel). Байт-

код - это внутреннее представление программ на языке Python.

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

так же быстро, как программный код на языке С или C++, о чем уже 

говорилось в главе 1. Обход инструкций выполняет виртуальная машина, а не 

микропроцессор, и чтобы выполнить байт-код, необходима дополнительная 

интерпретация, инструкции которого требуют на выполнение больше времени,

чем машинные инструкции микропроцессора. С другой стороны, в отличие от

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

компиляции - интерпретатору не требуется всякий раз снова и снова 

анализировать инструкции исходного текста. В результате Python способен обеспечить

скорость выполнения где-то между традиционными компилирующими и 

традиционными интерпретирующими языками программирования. Далее...

Как только программа будет скомпилирована в байт-код (или байт-код будет

загружен из существующих файлов .рус), он передается механизму под 

названием виртуальная машина Python (PVM - для любителей аббревиатур). 

Аббревиатура PVM выглядит более внушительно, чем то, что за ней стоит на самом

деле, - это не отдельная программа, которую требуется устанавливать. 

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

PVM - это механизм времени выполнения, она всегда присутствует в составе

системы Python и это тот самый программный компонент, который выполняет

ваши сценарии. Формально - это последняя составляющая того, что называют

«интерпретатором Python». Далее...

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

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

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

Выполнение программы на Python 3
Что стоит за словами «написать и запустить программу на языке Python» зависит от того, как вы смотрите на эту задачу - как программист или как интерпретатор Python. Обе точки зрения определяют свой взгляд на программирование.

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

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

print('hello world')
pnntB ** 100)

Этот файл содержит две инструкции print, которые просто выводят строку (текст в кавычках) и результат числового выражения B в степени 100) в выходной поток. Не надо сейчас стараться вникнуть в синтаксис языка - в этой главе нас интересует лишь сам порядок запуска программ.

 Позднее я расскажу об инструкции print и объясню, почему можно возвести число 2 в степень 100, не опасаясь получить ошибку переполнения.Далее...

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

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

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

Далее...

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

всего, что угодно, - от веб-сайтов и игровых программ до управления роботами и космическими кораблями.

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

подробной информацией. Далее...

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

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

• Имеет более широкие возможности, чем Tel. Язык Python поддерживает «программирование в целом», что делает его применимым для разработки крупных систем.

• Имеет более четкий синтаксис и более простую архитектуру, чем Perl, что делает программный код более удобочитаемым, простым в сопровождении и снижает вероятность появления ошибок.

• Проще и удобнее, чем Java. Python - это язык сценариев, a Java унаследовала сложный синтаксис от таких языков программирования, как C++.

• Проще и удобнее, чем C++, но нередко он не может конкурировать с C++, поскольку, будучи языком сценариев, Python предназначен для решения другого круга задач. Далее...

Естественно - это вопрос разработчика. Если у вас еще нет опыта 

программирования, язык следующих нескольких разделов может показаться немного 

непонятным, но не волнуйтесь, мы будем рассматривать все эти термины 

позднее, в ходе изложения материала. А для разработчиков ниже приводится 

краткое введение в некоторые особенности языка Python.

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

Python изначально является объектно-ориентированным языком 

программирования. Его объектная модель поддерживает такие понятия, как 

полиморфизм, перегрузка операторов и множественное наследование, однако, 

учитывая простоту синтаксиса и типизации Python, ООП не вызывает сложностей

в применении. Если эти термины вам непонятны, позднее вы обнаружите, что

изучать Python гораздо легче, чем другие объектно-ориентированные языки

программирования. Далее...