- Осваиваем Python. Унция ноль. Введение.
- Архитектура
- Варианты запуска программ
- Как запустить программу на Python
- Введение в тему
- Где запускать Python скрипты и как
- Запуск Python кода интерактивно
- Интерактивный режим в Linux
- Интерактивный режим в macOS
- Интерактивный режим в Windows
- Запуск python скриптов в интерактивном режиме
- Как выполняются python скрипты
- Блок схема выполнения кода интерпретатором
- Как запускать python скрипты
- Как запускать скрипт в командной строке
Осваиваем Python. Унция ноль. Введение.
Присоединяюсь к MaxElc, DarwinTenk и Devgru 🙂 Начинаю цикл статей посвященных Python. Сам я имею некоторый опыт обращения с PHP и Java. Но каждый раз, при относительном освоении какого-то инструмента — оставалось определённое неудовлетворение им, связанное с чем-то конкретным, и поиски продолжались. На сегодняшний день наиболее близко к идеалу в моих глазах стоит Python. Идеал недостижим — это понятно, посему и у Python есть недостатки. Прежде всего — это скорость выполнения, однако, эта проблема решаема несколькими путями и об этом мы обязательно поговорим чуть позднее.
Сам я начал осваивать Python буквально недавно. Начиная этот цикл статей — я преследую несколько целей. Во-первых, это дополнительная само мотивация + интерактивность, во-вторых, опыт. В-третьих, блуждая по просторам рунета — вижу, что Python куда менее популярен, чем в мире. Ситуацию надо исправлять 🙂
В соответствии с идеологией Python, а именно с тем, что одни из главных его козырей — это быстрота в освоении и скорость разработки, мы достаточно быстро, практически тезисно пронесёмся по основам синтаксиса и построения программ и перейдём к основной цели данного цикла — освоение django.
Итак, мы начинаем.
Архитектура
- CPython — стандартная реализация Python
- Jython — альтернативная реализация Python. Основная цель которой — бесшовная интеграция с платформой Java. Состоит из java-классов, которые транслируют программный код на языке Python в java байт-код, который затем запускается на виртуальной машине Java (JVM).
- IronPython — реализация Python предназначенная для интеграции с .NET платформой.
- Shedskin C++ — нетрадиционный подход к выполнению программ на языке Python. Цель — оптимизация скорости выполнения. Преобразует исходный код Python в исходный код C++, который затем может быть скомпилирован в машинный код.
- PyPy — реализация PVM на самом языке Python + JIT компилятор.
Варианты запуска программ
На хабре уже была написана хорошая инструкция для новичков, как быстро организовать рабочую среду для разработки на Python и django. Если вы уже проделали описанную в ней последовательность действий, то это означает, что на вашей машине уже установлен интерпретатор python. В большинстве Linux дистрибутивов он установлен по-умолчанию.
Вариант 1. Интерактивный режим
Для попадания в интерактивный режим необходимо ввести в командной строке команду python.
$ python
Python 2.5.2 (r252:60911, Oct 5 2008, 19:24:49)
[GCC 4.3.2] on linux2
Type «help», «copyright», «credits» or «license» for more information.
>>> print ‘Hello World!’
Hello World!
В интерактивном режиме инструкции выполняются построчно. Для того, чтобы выполнить блок кода, можно, к примеру, набрать в пустом текстовом файле следующие две команды:
str1 = ‘Hello World!’
str2 = » It’s my second script»
print ‘import has been done successfully’
И сохранить их в файле hi.py. Далее в командной строчке используя команду cd перейти в тот каталог, в котором вы сохранили файл и набрать команду python.
Для импорта инструкций можно использовать инструкцию import . Файлы в языке Python являются модулями, которые внутри себя содержат пространство имён. Импортируя модуль мы получаем доступ к пространству имён верхнего уровня.
$ python
Python 2.5.2 (r252:60911, Oct 5 2008, 19:24:49)
[GCC 4.3.2] on linux2
Type «help», «copyright», «credits» or «license» for more information.
>>> import hi
import has been done successfully
>>> print hi.str1+hi.str2
Hello World! It’s my second script
Используя в инструкции конструкцию вида: hi.str1, мы обращаемся к имени str1, определённом внутри модуля hi.
Строки, числа в языке Python — это тоже объекты. Здесь прослеживается наследование парадигмы берущей начало от языка SmallTalk «Всё — объекты». Однако, если мне не изменяет память там речь шла и о том, что операторы — тоже были объектами. В python оператор «+» — это перегруженный оператор для строк выполняющий конкатенацию.
Для импортирования конкретных имён можно использовать инструкцию from:
>>> from hi import str1
>>> print str1
Hello World!
После чего мы сможем обращаться к импортируемому имени непосредственно.
После внесения каких-то изменений в файл, для того чтобы изменения вступили в силу — необходимо перезагрузить модуль с помощью функции reload().
Для получения списка всех доступных имён модуля можно использовать функцию dir():
>>> dir(hi)
[‘__builtins__’, ‘__doc__’, ‘__file__’, ‘__name__’, ‘str1’, ‘str2’]
Вариант 2. Запуск из командной строки.
Запустить сценарий из командной строки можно следующим образом:
Так же сценарию можно передавать параметры командной строки. Доступ к ним из сценария можно получить, импортировав встроенный модуль sys. Изменим файл hi.py следующим образом:
После чего вызовем его из команжной строки, передав несколько произвольных параметров:
$ python hi.py 1 2 3 ‘param-pam-pam’
[‘hi.py’, ‘1’, ‘2’, ‘3’, ‘param-pam-pam’]
В результате получим список, содержащий в себе переданные параметры. Список — это тоже конструкция языка Python. О списках речь пойдёт в следующих статьях.
Потоки ввода и вывода сценария можно перенаправлять с помощью средств командной оболочки, например так:
$ python hi.py 1 2 3 ‘param-pam-pam’ > text.txt
Вариант 3. IDE.
Интерактивный режим удобен в некоторых случаях, например, когда нужно поэкспериментировать с какой-то определённой инструкцией. Однако, постоянно работать в нём неудобно т.к. Нужно постоянно вспоминать про перезагрузку модулей.
Поэтому гораздо удобнее воспользоваться описанной выше процедурой настройки IDE и запускать программы из неё. Так же при разработке программ на Python вполне приемлем вариант написания кода в блокноте с подсветкой синтаксиса и запуском программы из консоли.
На сегодня всё. В следующих статьях мы перейдём непосредственно к изучению конструкций языка. Не сомневаюсь, отклики будут и я буду на них ориентироваться.
Спасибо за внимание!
Как запустить программу на Python
Основы
Введение в тему
В этом уроке мы ответим на вопрос: как запустить программу на Python? Чтобы ощутить всю мощь языка Пайтон необходимо уметь запускать код, написанный на нём. Программы на Python 3 запускаются независимо от операционной системы, версии языка и местоположения кода. Программа может храниться в файле, среде разработки или редакторе кода.
Где запускать Python скрипты и как
Запустить программу на Python можно несколькими способами:
1. С помощью консоли (командной строки);
2. Использовать конкретную версию Пайтон или Анаконда;
3. Использовать Crontab;
4. Запустить одну программу Пайтон с помощью другого;
5. Использовать файловый менеджер;
6. Используя интерактивный режим Пайтон;
7. Применить редактор кода или IDE.
Запуск Python кода интерактивно
Если открыть консоль и набрать «python3» + «Enter», то запустится Python shell – интерактивный режим исполнения кода Python. Это означает, что в этом режиме Вы можете построчно вводить код и он, так же построчно, будет выполняться. Чаще всего этот режим используют для отладки каких-то небольших частей программы, а также для запуска скриптов, к примеру, управляющих сервером.
Интерактивный режим в Linux
Для запуска кода в интерактивном режиме в Linux достаточно открыть терминал, ввести ~$ python и нажать Enter. Готово!
Интерактивный режим в macOS
В macOS всё устроено так же: вводим /$ python и Enter. Интерактивный режим запущен.
Интерактивный режим в Windows
В операционной системе Windows необходимо войти в командную строку и ввести python. После нажатия Enter консоль будет выглядеть следующим образом:
Запуск python скриптов в интерактивном режиме
В интерактивном режиме можно писать код для проверки гипотез, отладки и прочего. Программа будет выполняться построчно.
Microsoft Windows [Version 10.0.19042.1052] (c) Корпорация Майкрософт (Microsoft Corporation). Все права защищены. C:\Users\Dushenko>python Python 3.9.2 (tags/v3.9.2:1a79785, Feb 19 2021, 13:44:55) [MSC v.1928 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> var = [i for i in range(10)] >>> print(var) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]Символ «>>>» является «приглашением», то есть язык при помощи этого символа приглашает Вас что-то ввести.
Строчки без этого символа в начале – это «вывод». Вывод – это то, что выводит сам язык, его ответ на код, введённый программистом.
Для выхода из интерактивного режима нужно ввести:И нажать Enter. Так Вы выйдете из интерактивного режима и вернетесь в терминал, из которого начинали.
Есть и прочие способы выхода из интерактивного режима Python. В Linux нужно нажать Ctrl + D, а в Windows — Ctrl + Z + Enter.
Так же, вместо «exit()», можно ввести:Результат будет тем же. Эта команда идентична exit() и введена в язык исключительно для удобства программистов.
Обратите внимание что при использовании этого режима Питон-скрипты не сохраняются в файл.Как выполняются python скрипты
Чтобы понять как происходит выполнение Python-скрипта можно рассмотреть следующий пример:
>>> print(6) 6 >>> var = 654 >>> print(var) 654 >>> for i in range(1, 11): . print(i) . 1 2 3 4 5 6 7 8 9 10При выполнении программы Питон читает каждую строку сверху вниз и сразу выполняет её. Если встречается команда «print()», интерпретатор выводит то, что заключено в скобки этой команды. Если встречается команда «input()», Питон будет ожидать ввод с клавиатуры и, после нажатия Enter, перейдёт к выполнению следующей строки.
Блок схема выполнения кода интерпретатором
Общая схема выполнения программы выглядит так:
1. Программа или файл с расширением .py компилируется, и из него генерируются байт-коды. Итоговый код имеет расширение .pyc или .pyo.
Файлы с расширением .pyc автоматически создаются интерпретатором при импортировании кода, что оптимизирует будущие импорты этого модуля. Поэтому такие файлы создаются только из .py файлов, если они импортируются другим файлом или модулем с расширением .py.
Файлы .pyo также создается интерпретатором при импорте модуля, но с указанием интерпретатору включения параметров оптимизации.
Оптимизатор активируется добавлением флага «-O» при вызове интерпретатора Python:
python -O
Файлы .pyo меньше по размеру, благодаря алгоритмам оптимизации, применённым интерпретатором.
Тип файла .pyd, в отличие от предыдущих, применим исключительно для ОС Windows. Эти файлы аналогичны подключаемым библиотекам DLL.2. Генерируется бинарный файл. Он читается интерпретатором для выполнения инструкций.
Опытные разработчики Python иногда читают байт-коды для лучшего понимания работы программы.Как запускать python скрипты
Для запуска Python-скрипта с помощью командной строки необходимо сохранить программу в файл.
Возьмем в качестве примера файл, который был сохранен как script.py. Сохранить его можно несколькими способами:
— Создать Пайтон-скрипт из командной строки и сохранить его,
— Создать Пайтон -скрипт с помощью текстового редактора или IDE (к примеру, PyCharm) и сохранить его. Просто создайте файл, запишите код и сохраните как «script.py»
Сохранить программу в текстовом редакторе очень просто. Процесс ничем не отличается от сохранения простого текстового файла.Как запускать скрипт в командной строке
Программы можно запускать с помощью команды Пайтон прямо в консоле. Для этого нужно удостовериться, что вы выбрали путь до него или уже находитесь в нужной папке. Для исполнения скрипта откройте консоль и введите python3 script.py.
Код, который будет записан в файле script.py: