Как запустить программу питона в консоли

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

РЕДАКТИРОВАТЬ: проблема решена с ShellExecute()

user4910008 27 июл ’16 в 12:07 2016-07-27 12:07
2016-07-27 12:07

4 ответа

Используйте функцию ShellExecuteEx.

BOOL ShellExecuteEx( _Inout_ SHELLEXECUTEINFO *pExecInfo );

Это pExecInfo: ***nShow — флаги, которые определяют, как приложение должно отображаться при его открытии.

typedef struct _SHELLEXECUTEINFO < DWORD cbSize; ULONG fMask; HWND hwnd; LPCTSTR lpVerb; LPCTSTR lpFile; LPCTSTR lpParameters; LPCTSTR lpDirectory; int nShow;/*=0 if you don’t want the console window to appear*/ HINSTANCE hInstApp; LPVOID lpIDList; LPCTSTR lpClass; HKEY hkeyClass; DWORD dwHotKey; union < HANDLE hIcon; HANDLE hMonitor; >DUMMYUNIONNAME; HANDLE hProcess; > SHELLEXECUTEINFO, *LPSHELLEXECUTEINFO;
user4910008 21 фев ’17 в 09:09 2017-02-21 09:09
2017-02-21 09:09

Попробуйте использовать Питон pythonw.exe исполняемый файл для запуска вашего скрипта.

Как избавиться от консоли Python ✂

В ОС Windows — исполняемые файлы, являющиеся консольными приложениями ( python.exe без w является консольным приложением) запускается с отображением окна консоли; с другой стороны, обычные приложения Windows не порождают это черное консольное окно.

Вы можете найти подробности об этих двух исполняемых файлах в этом старом вопросе: pythonw.exe или python.exe?

user1898234 27 июл ’16 в 12:11 2016-07-27 12:11
2016-07-27 12:11

Во всех установках python начиная с 2.5 (и, возможно, ранее), если установка была выполнена правильно, .py файлы связаны с python.exe а также .pyw файлы связаны с pythonw.exe

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

Запустите следующую команду в cmd:

ftype | find «pythonw» assoc | find «.pyw»
Python.NoConFile=»D:Program FilesPython27pythonw.exe» «%1» %* .pyw=Python.NoConFile

Если у вас этого нет, вы можете сделать несколько вещей, чтобы это исправить:

user6451573 27 июл ’16 в 12:24 2016-07-27 12:24
2016-07-27 12:24

Источник: stackru.com

Интерактивный режим Python (REPL)

У разработчиков на Python есть возможность использовать его в интерактивном режиме. Введенные с клавиатуры операторы сразу же выполняются и результат выводится на экран (в консоль). Такой режим интерпретатора называется REPL (read-eval-print loop). Работает он следующим образом:

  1. read считывает одно выражение и преобразует его в соответствующую структуру данных;
  2. eval принимает одну такую структуру и вычисляет соответствующее выражение;
  3. print принимает результат и печатает его на экран (в консоль).
Читайте также:
Программа чтобы обрезать музыку на компьютер

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

Як запустити #python скрипт на #windows

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

  • при изучении языка;
  • для быстрого тестирования отдельных фрагментов кода;
  • для быстрого запуска простых команд (например для запуска нескольких bash скриптов в цикле через Python);
  • для использования интерпретатора в качестве продвинутого калькулятора.

Как запустить интерактивный режим

После того как вы установили Python, достаточно зайти в терминал и выполнить команду python :

Вы вошли в интерактивный режим

Второй вариант — использовать среду разработки IDLE . После запуска IDLE появится окно оболочки Python (Python Shell), в котором можно работать с Python в интерактивном режиме.

Примеры работы в REPL режиме

После того как вы зашли в интерактивный режим, вы можете писать команды на языке python после символа >>>

Например, выведем на экран «hello world»:

>>> print(«Hello, world!») Hello, world!

Рассмотрим пример посложнее:

>>> from random import randint >>> help(randint) Help on method randint in module random: randint(a, b) method of random.Random instance Return random integer in range [a, b], including both end points. >>> numbers = [] >>> for i in range(10): . numbers.append(randint(1, 99)) . >>> print(numbers) [83, 38, 63, 25, 7, 88, 48, 79, 6, 17] >>> numbers.sort() >>> numbers [6, 7, 17, 25, 38, 48, 63, 79, 83, 88] >>>

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

Рассмотрим пример по шагам:

  1. строка from random import randint импортирует функцию randint;
  2. далее вызывается функция help(randint) отображающая информацию по функции randint ;
  3. инициализируется список numbers ;
  4. далее следует цикл от 0 до 9 (После того как вы набрали в консоли for i in range(10): инструкция не выполняется, так как интерактивный режим понимает, что инструкция подразумевает вторую строку с телом цикла. Вместо этого, после того как вы нажали enter курсор переместится на вторую строку);
  5. в теле цикла генерируем случайные числа и записываем их в список numbers ;
  6. далее функцией print на экран выводится наш сгенерированный список чисел;
  7. метод sort сортирует массив по возрастанию;
  8. последним шагом выводим отсортированный список (в интерактивном режиме можно вместо print(numbers) писать просто numbers ).

Выход из интерактивного режима

Выйти и REPL режима можно комбинациями:

  • CTRL-Z + enter — для Windows;
  • CTRL-Z или CTRL-D — для Linux и MacOS;
  • exit() + enter .

Источник: pythonchik.ru

Использование интерактивной консоли Python

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

Читайте также:
В какой программе создать интро

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

Этот мануал научит вас работать с интерактивной консолью Python.

Доступ к интерактивной консоли

Доступ к интерактивной консоли Python можно получить с любого локального компьютера или сервера, на котором установлен Python.

Для входа в интерактивную консоль Python используйте команду:

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

cd environments
my_env/bin/activate

Затем откройте консоль:

  • Настройка локальной среды разработки для Python 3 в Ubuntu 16.04
  • Установка Python 3 и настройка среды разработки на сервере Ubuntu 16.04

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

Поле для ввода следующей команды – три знака больше:

Вы можете указать определенную версию Python, добавив номер версии в команду без пробелов:

$ python2.7
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type «help», «copyright», «credits» or «license» for more information.
>>>

Вывод сообщает, что теперь будет использоваться версия Python 2.7.12. Если бы она была версией Python по умолчанию, открыть её интерактивную консоль можно было бы с помощью команды python2.

Чтобы вызвать интерактивную консоль версии Python 3 по умолчанию, нужно ввести:

$ python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type «help», «copyright», «credits» or «license» for more information.
>>>

Также консоль этой версии можно вызвать с помощью команды:

Работа с интерактивной консолью Python

Интерактивный интерпретатор Python принимает синтаксис Python, который находится после префикса >>>.

Например, он позволяет присваивать значения переменным:

Вы можете присвоить значения нескольким переменным, чтобы обрабатывать математические операции.

>>> birth_year = 1868
>>> death_year = 1921
>>> age_at_death = death_year — birth_year
>>> print(age_at_death)
53
>>>

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

Интерактивную консоль можно использовать как калькулятор.

Многострочный код Python в консоли

При создании многострочного кода в консоли интерпретатор Python использует троеточие (…) в качестве вспомогательной строки.

Чтобы выйти из вспомогательной строки, нужно дважды нажать Enter.

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

Читайте также:
Анализ рабочей программы по предмету технология

>>> 8host = ‘8host’
>>> blog = ‘blog’
>>> if len(8host) > len(blog):
. print(‘8host codes in Java.’)
. else:
. print(‘8host codes in Python.’)
.
8host codes in Java.
>>>

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

Обратите внимание, при этом нужно соблюдать соглашение об отступах Python (четыре пробела), иначе вы получите сообщение об ошибке:

>>> if len(8host) > len(blog):
. print(‘8host codes in Java.’)
File «», line 2
print(‘8host codes in Java.’)
^
IndentationError: expected an indented block
>>>

Импорт модулей

Интерпретатор Python позволяет быстро проверить, доступны ли те или иные модули в определенной среде программирования. Для этого существует оператор import:

>>> import matplotlib
Traceback (most recent call last):
File «», line 1, in
ImportError: No module named ‘matplotlib’

В данном случае библиотека matplotlib недоступна в текущей среде.

Чтобы установить эту библиотеку, используйте pip.

pip install matplotlib
Collecting matplotlib
Downloading matplotlib-2.0.2-cp35-cp35m-manylinux1_x86_64.whl (14.6MB)
.
Installing collected packages: pyparsing, cycler, python-dateutil, numpy, pytz, matplotlib
Successfully installed cycler-0.10.0 matplotlib-2.0.2 numpy-1.13.0 pyparsing-2.2.0 python-dateutil-2.6.0 pytz-2017.2

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

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

Выход из интерактивной консоли Python

Закрыть консоль Python можно двумя способами: с помощью клавиатуры или с помощью функции Python.

Чтобы закрыть консоль, можно нажать на клавиатуре Ctrl + D в *nix-подобных системах или Ctrl + Z + Ctrl в Windows.

Также в Python есть функция quit(), которая закрывает консоль и возвращает вас в стандартный терминал.

Функция quit() записывается в историю, а комбинации клавиш – нет. Это следует учитывать при выходе из консоли. Откройте файл истории /home/8host /.python_history

.
age_at_death = death_year — birth_year
print(age_at_death)
octopus = ‘Ollie’
quit()

История консоли Python

Еще одним преимуществом интерактивной консоли Python является история. Все команды регистрируются в файле .python_history (в *nix-подобных системах).

На данный момент файл истории Python выглядит так:

import pygame
quit()
if 10 > 5:
print(«hello, world»)
else:
print(«nope»)
8host = ‘8host’
blog = ‘blog’
.

Чтобы закрыть файл, нажмите Ctrl + X.

Отслеживая историю, вы можете вернуться к предыдущим командам, скопировать, вставить или изменить этот код, а затем использовать его в файлах программы или Jupyter Notebook.

Заключение

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

Для отладки файлов программы Python вы можете использовать модуль code и открыть интерактивный интерпретатор внутри файла.

Источник: www.8host.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru