Як виконати файл Python у Блокноті ++?


122

Я вважаю за краще використовувати Notepad ++ для розробки,

Як виконати файли в Python через Notepad ++?



Відповіді:


150

Перший варіант: (Найпростіший, рекомендований)

Відкрийте Блокнот ++. У меню перейдіть до: Виконати -> Виконати .. (F5). Введіть:

C:\Python26\python.exe "$(FULL_CURRENT_PATH)"

Тепер, замість того, щоб натиснути запуск, натисніть кнопку "Зберегти", щоб створити ярлик для неї.

Примітки

  • Якщо у вас Python 3.1: введіть Python31замістьPython26
  • Додайте, -iякщо ви хочете, щоб вікно командного рядка залишалося відкритим після закінчення сценарію

Другий варіант

Використовуйте пакетний сценарій, який запускає скрипт Python, а потім створіть ярлик до цього з Notepad ++.

Як пояснено тут: http://it-ride.blogspot.com/2009/08/notepad-and-python.html


Третій варіант: (Не безпечно)

Код відкривається "HKEY_CURRENT_USER \ Software \ Python \ PythonCore", якщо ключ існує, він отримає шлях від першого дочірнього ключа цього ключа.

Перевірте, чи існує цей ключ, а якщо його немає, ви можете спробувати його створити.


1
хм, спасибі за допомогу поки що. Я спробував варіант 2, який не працював. На ньому написано : i37.tinypic.com/b4fhfm.jpg У Windows 7 це може бути проблемою?

26
Відкрийте Блокнот ++. У меню перейдіть до: Виконати -> Виконати .. (F5). Введіть: cmd / K "$ (FULL_CURRENT_PATH)"
Раміз Уддін

1
Я не розумію речі ярлика. Я зберігаю його і надаю комбінацію клавіш швидкого доступу, але потім він не працюватиме лише натисканням цих клавіш. Що я роблю неправильно? Я можу зробити команду плагіну та використовувати її, коли вибрано вікно консолі. Але це повністю перемагає суть.
AlanSE

3
Хоча ця відповідь (№3) здається найпоширенішою, яку я знайшов в Інтернеті, для мене це не добре працює. Проблема полягає в тому, що він працює в каталозі Notepad ++. Таким чином, я придумав таке рішення: cmd / c "taskkill / F / IM python.exe & cd $ (CURRENT_DIRECTORY) & C: \ Python27 \ python.exe -i" $ (CURRENT_DIRECTORY) \ $ (FILE_NAME ) "" Це запускає код у правильній папці, а також залишає інтерпретатор відкритим після виконання. Крім того, він закриє будь-які інші відкриті вікна python, які ви, можливо, нехтували закрити, як я часто це роблю.
copeland3300

6
Оновлення: це працює для мене теж: py -3 -i "$(FULL_CURRENT_PATH)". Корисне посилання для розуміння py -3команди: stackoverflow.com/questions/15912063/…
Габріель Степлес

42

@ Відповідь Раміза Уддіна, безумовно, заслуговує більшої наочності:

  • Відкрийте Блокнот ++
  • У меню перейдіть до: ВиконатиВиконати .. (F5)
  • Введіть: cmd /K python "$(FULL_CURRENT_PATH)"

1
Це працює і простіше налаштувати IMO. Також додайте -i для того, щоб вікно залишалося відкритим cmd / K python -i "$ (FULL_CURRENT_PATH)"
SwampYeti

Варто зазначити, що це рішення потребує додавання Python до вашої PATH. Він працює, відкриваючи командний рядок і набираючи текстpython "$(FULL_CURRENT_PATH)"
Stevoisiak

Не працює на Python 3. Для цього дивіться мою відповідь тут: stackoverflow.com/a/48528175/4561887
Габріель Штаплес

це викликає вікно cmd. чи можемо ми замість цього назвати powershell?
Захоплений інженер

20

Ось що для мене спрацювало:

Відкрийте блокнот ++ і натисніть F5. Ви отримаєте невелике спливаюче вікно:

Спливаюче вікно для вступу в програму для запуску

Тип: C: \ Python27 \ python.exe -i "$ (FULL_CURRENT_PATH)" для Python 2.7.

а потім збережіть як ... і виберіть власне комбінацію клавіш, щоб запустити її кожного разу, коли ви хочете щось запустити


2
Це приємна стисла відповідь, і я посилався на це своїх стажистів, коли вони йдуть на створення АЕС для розробки Python. Але у них постійно виникали проблеми з розумінням, куди слід ввести команду, тому я додав графіку, щоб підкріпити ваші (зрозумілі мені) інструкції. Вони також мали певні проблеми з тим, що перша частина команди C:\Python27\python.exeповинна змінюватись, щоб відображати, де встановлений власний Python, але друга половина -i "$(FULL_CURRENT_PATH)"була магією, яку потрібно було набрати так само, як є.
Енн Ганн

14

У меню перейдіть до: "Виконати" -> "Виконати ..." (або просто натисніть F5).

Для Python 2 введіть:

py -2 -i "$(FULL_CURRENT_PATH)"

Для Python 3 введіть:

py -3 -i "$(FULL_CURRENT_PATH)"

Список літератури:

Щоб краще зрозуміти pyкоманду:

py -h

Ще одне корисне посилання для розуміння pyкоманди: Як запустити python 2 та 3 у Windows 7?

Дякую Решуре за його відповідь, що змусив мене зрозуміти це.


1
Вгору Використовуючи це за допомогою CTRL + ALT + Pярлика.
akinuri

12

Спочатку встановіть Python з https://www.python.org/downloads/

Запустіть інсталятор

** ВАЖЛИВО ** Обов’язково перевіряйте обидва:

  • Встановіть запуск для всіх користувачів
  • Додайте Python 3.6 до шляху

Клацніть Установити зараз і закінчіть установку.

Відкрийте блокнот ++ та встановіть плагін PyNPP з Plugin Manager. Я використовую N ++ 6.9.2

Збережіть новий файл як new.py

Введіть N ++

import sys

print("Hello from Python!")
print("Your Python version is: " + sys.version) 

Натисніть Alt + Shift + F5

Просто як це.


трюк для зміни ярлика: пошук ярлика (не імені). Вимкніть той, що може конфліктувати.
JinSnow

Необов’язково: просто запустити скрипт (будь-який скрипт, а не лише python), ви можете використовувати плагін RunMe (але якщо ви запустите python, консоль python не з’явиться)
JinSnow

7

Усі відповіді для меню «Виконати» - «Виконати» йдуть за допомогою перемикача cmd «/ K», тому термінал залишається відкритим, або «-i» для python.exe, тому python працює в інтерактивному режимі - обидва, щоб зберегти вихід для вас спостерігати.

Але все ж у cmd /kвас потрібно набрати, exitщоб закрити його, у python -i- quit(). Якщо це занадто багато, щоб набрати на свій смак (для мене це впевнено :), команда Run - це використовувати

cmd /k C:\Python27\python.exe  "$(FULL_CURRENT_PATH)" & pause & exit

C:\Python27\python.exe- очевидно, повний шлях до встановлення вашого python (або просто, pythonякщо ви хочете пройти з першим виконуваним файлом у вашому користувальницькому шляху).

&це безумовне виконання наступної команди в Windows - безумовне, оскільки вона працює незалежно від RC попередньої команди ( &&є "і" - запускається лише в тому випадку, якщо попередня успішно виконана, ||- це "або").

pause- друкує "Натисніть будь-яку клавішу для продовження." і чекає будь-якого ключа (цей вихід може бути придушений у разі потреби).

exit - добре, наберіть вихід для вас :)

Отже, наприкінці cmdзапуску, python.exeякий виконує поточний файл і тримає вікно відкритим, pauseчекає, коли ви натиснете будь-яку клавішу, і, exitнарешті, закрийте вікно, як тільки ви натиснете цю клавішу.


1
ця відповідь заслуговує на вершину
Ali80

1
найкраще рішення я бачив так, вартість проїзду.
Ерік Потепління

7

Я також хотів запускати файли python безпосередньо з Notepad ++. Найпоширеніший варіант, який можна знайти в Інтернеті, - це вбудований варіант Run. Тоді у вас є два варіанти:

  1. Запустіть пітон файл в консолі (в Windows , це командний рядок ) з кодом що - щось на зразок цього (посилань: ):введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення

    C:\Path\to\Python\python.exe "$(FULL_CURRENT_PATH)"

    (Якщо після запуску вікно консолі негайно закриється, ви можете додати cmd /kдо свого коду . Посилання:) Це прекрасно працює, і ви навіть можете запускати файли в інтерактивному режимі , додаючи до свого коду (посилання:) .введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення-iвведіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення

  2. Запуск програми пітона в IDLE з кодом що - щось на зразок цього (посилання: в цих посилань використовується, але я використовую замість цього, тому що набори правильний поточний робочий каталог автоматично):введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображенняC:\Path\to\Python\Lib\idlelib\idle.pyC:\Path\to\Python\Lib\idlelib\idle.batidle.bat

    C:\Path\to\Python\Lib\idlelib\idle.bat "$(FULL_CURRENT_PATH)"

    Насправді це не запускає вашу програму в оболонці IDLE , але натомість вона відкриває ваш файл python в редакторі IDLE, і тоді вам потрібно натиснути Run Module(або натиснути F5), щоб запустити програму. Таким чином, він відкриває ваш файл у редакторі IDLE, а потім вам потрібно запустити його звідти, що перешкоджає меті запуску файлів python з Notepad ++.

    Але, шукаючи в Інтернеті, я знайшов варіант, який додає '-r' до вашого коду (посилання:) :введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення

    C:\Path\to\Python\Lib\idlelib\idle.bat -r "$(FULL_CURRENT_PATH)"

    Це запустить вашу програму python в оболонці IDLE, і оскільки вона знаходиться в IDLE, вона за замовчуванням знаходиться в інтерактивному режимі.

Проблема із запуском файлів python за допомогою вбудованої Runопції полягає в тому, що кожного разу, коли ви запускаєте файл python, ви відкриваєте нову консоль або вікно IDLE і втрачаєте всі результати попередніх виконань. Для деяких це може не бути важливо, але коли я почав програмувати на python, я використовував Python IDLE , тому я звик декілька разів запускати файл python в одному вікні оболонки IDLE . Також проблема із запуском програм python від Notepad ++ полягає в тому, що вам потрібно вручну зберегти файл, а потім натиснути Run(або натиснути F5). Для вирішення цих проблем (AFAIK * ) вам потрібно використовувати плагіни Notepad ++. Найкращий плагін для запуску файлів python від Notepad ++ - це NppExec . (Я також спробував PyNPP і Python Script. PyNPPзапускає файли python у консолі, він працює, але ви можете це зробити без плагіну через вбудовану Runопцію, і Python Script використовується для запуску сценаріїв, які взаємодіють із Notepad ++, тому ви не можете запускати файли python.) Для запуску файлу python за допомогою плагіна NppExec ви повинні піти Plugins -> NppExec -> Executeі потім ввести що - щось на зразок цього (посилання: ):введіть тут опис зображення введіть тут опис зображення

C:\Path\to\Python\python.exe "$(FULL_CURRENT_PATH)"

За допомогою NppExec ви також можете зберегти файл python перед запуском з командою , встановити робочий каталог з командою або запустити програму python в інтерактивному режимі з командою . В Інтернеті я знайшов багато посилань ( ), в яких згадуються ці параметри, але найкраще використовувати NppExec для запуску програм python, які я знайшов у посібнику з NppExec, в якому є глава з цим кодом :npp_save cd "$(CURRENT_DIRECTORY)" -i введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення4.6.4. Running Python & wxPython

npp_console -  // disable any output to the Console
npp_save  // save current file (a .py file is expected)
cd "$(CURRENT_DIRECTORY)"  // use the current file's dir
set local @exit_cmd_silent = exit()  // allows to exit Python automatically
set local PATH_0 = $(SYS.PATH)  // current value of %PATH%
env_set PATH = $(SYS.PATH);C:\Python27  // use Python 2.7
npp_setfocus con  // set the focus to the Console
npp_console +  // enable output to the Console
python -i -u "$(FILE_NAME)"  // run Python's program interactively
npp_console -  // disable any output to the Console
env_set PATH = $(PATH_0)  // restore the value of %PATH%
npp_console +  // enable output to the Console

Все, що вам потрібно зробити, - скопіювати цей код і змінити каталог python, якщо ви використовуєте іншу версію python (наприклад, * Я використовую python 3.4, тому мій каталог C:\Python34). Цей код працює відмінно, але є один рядок, який я додав до цього коду, щоб я міг запускати програму python кілька разів, не втрачаючи попередній вихід:

npe_console m- a+

a+ полягає в тому, щоб увімкнути режим "додавання", який зберігає текст попередньої консолі та не очищає її.

m- вимикає внутрішні повідомлення консолі (вони зеленого кольору)

Кінцевий код, який я використовую у вікні Execute NppExec:

npp_console -  // disable any output to the Console
npp_save  // save current file (a .py file is expected)
cd "$(CURRENT_DIRECTORY)"  // use the current file's dir
set local @exit_cmd_silent = exit()  // allows to exit Python automatically
set local PATH_0 = $(SYS.PATH)  // current value of %PATH%
env_set PATH = $(SYS.PATH);C:\Python34  // use Python 3.4
npp_setfocus con  // set the focus to the Console
npe_console m- a+
npp_console +  // enable output to the Console
python -i -u "$(FILE_NAME)"  // run Python's program interactively
npp_console -  // disable any output to the Console
env_set PATH = $(PATH_0)  // restore the value of %PATH%
npp_console +  // enable output to the Console

Ви можете зберегти код свого NppExec та призначити ярлик клавіші цьому сценарію NppExec. (Вам потрібно відкрити розширені параметри плагіна NppExec , виберіть свій скрипт у Associated scriptспадному списку, натисніть кнопку Add/Modify, перезапустіть Блокнот ++, перейдіть до пункту «Блокнот ++» Settings->Shortcut Mapper -> Plugin commands, виберіть свій скрипт, натисніть Modifyта призначте клавішу швидкого доступу . Я хотів поставити F5як мій ярликовий ключ, для цього вам потрібно спочатку змінити клавішу швидкого доступу для вбудованої опції Runна щось інше.) Посилання на глави з посібника з NppExec, які пояснюють, як зберегти код NppExec та призначити клавішу швидкого доступу : NppExec's "Execute...", NppExec's script.

PS * : за допомогою плагіна NppExec ви можете додати Highlight Filters(знайдено в Console Output Filters...), що виділяє певні рядки. Я використовую його , щоб виділити рядки помилки в червоний колір, щоб зробити це вам потрібно додати Highlight masks: *File "%FILE%", line %LINE%, in <*>і Traceback (most recent call last):як це .


Станом на 2018 рік, це найкраща і найповніша відповідь.
Джиммі Він

6

Жодне із запропонованих раніше рішень не працювало для мене. Потрібна незначна модифікація.

Після натискання клавіші F5 у Блокноті ++ введіть:

cmd /k "C:\Python27\python.exe $(FULL_CURRENT_PATH)"

Командний рядок залишається відкритим, щоб ви могли бачити вихід сценарію.


5

Я використовую плагін NPP_Exec (Знайдено в менеджері плагінів). Після встановлення відкрийте вікно консолі (ctrl + ~) та введіть:

cmd

Це запустить командний рядок. Потім введіть:

C:\Program Files\Notepad++> **python "$(FULL_CURRENT_PATH)"**

виконати поточний файл, з яким ви працюєте.


4

Я б хотів, щоб люди тут розміщували кроки замість просто загальних концепцій. Зрештою я отримав роботу cmd / k версії.

Покрокові інструкції:

  1. У АЕС натисніть на пункт меню: Запустити
  2. У підменю натисніть: Виконати
  3. У діалоговому вікні "Запустити ..." у полі Програма для запуску видаліть будь-який існуючий текст і введіть: cmd / K "$ (FULL_CURRENT_PATH)" / K необов'язково, він відкриває вікно, створене під час запуску сценарію. , якщо ви цього хочете.
  4. Натисніть кнопку Зберегти ...
  5. Відкриється діалогове вікно ярлика; заповніть його, якщо хочете комбінацію клавіш (там є примітка, яка говорить "Це відключить прискорювач", що б там не було, тому, можливо, ви не хочете використовувати комбінацію клавіш, хоча, мабуть, не завадить призначити її, коли ви не потрібен прискорювач). Десь я думаю, що ви повинні сказати NPP, де знаходиться файл Python.exe (наприклад, для мене: C: \ Python33 \ python.exe). Я не знаю, де і як ви це робите, але, пробуючи тут різні речі, мені вдалося це зробити - я не пам'ятаю, яка спроба зробила трюк.

Я здогадуюсь, що Python просто на вашому шляху. Це працює для мене, і саме тому мені не довелося розповідати АЕС, де був Python (і я не вірю, що десь можна сказати АЕС, де знаходиться Python)
Райан,

3

Тут немає відповіді, або плагін я не знайшов за умови, що я хотів. Мінімалістський метод запустити мій код python, який я писав на Notepad ++ за допомогою натискання клавіші швидкого доступу, бажано без плагінів.

У мене є Python 3.6 (64-бітний), для Windows 8.1 x86_64 та Notepad ++ 32bit. Після того, як ви напишете свій скрипт Python в Блокнот ++ і збережете його, натисніть F5 для Run. Тоді пиши:

"C:\Path\to\Python\python.exe" -i "$(FULL_CURRENT_PATH)"

і натисніть кнопку Виконати. В iпрапор сили термінал , щоб залишитися ще після виконання коду закінчилася, для вас , щоб перевірити його. Ця команда запустить скрипт у cmd-терміналі, і термін все ще буде лежати там, поки ви не закриєте його, ввівши його exit().

Ви можете зберегти це в ярлику для зручності (мій CTRL + SHIFT + P).


2

Є одне питання, яке я не бачив вирішеним у вищезазначених рішеннях. Python встановлює поточний робочий каталог, куди б ви не запустили інтерпретатора. Якщо вам потрібен поточний робочий каталог, щоб він був тим самим каталогом, де ви зберегли файл, тоді ви можете натиснути F5 і ввести це:

cmd /K cd "$(CURRENT_DIRECTORY)"&C:\Users\username\Python36-32\python.exe -i "$(FULL_CURRENT_PATH)"

За винятком випадків, коли ви замінили C: \ Users \ username \ Python36-32 \ python.exe будь-яким шляхом до вашого інтерпретатора python.

В основному ви запускаєте командний рядок, змінюєте каталог у каталог, що містить файл .py, який ви намагаєтеся запустити, а потім запускаєте його. Ви можете об'єднати скільки завгодно команд командного рядка за допомогою символу '&'.


Блокнот ++ не визнає ваш CURRENT_DIRECTORYкаталог файлом коду.
стріпетер

2
Дуже дякую за цю відповідь - я боровся з поточним каталогом деякий час. Я зробив кілька мод тхо: cmd /K cd "$(CURRENT_DIRECTORY)"&python "$(FULL_CURRENT_PATH)"&pause&exit Це поєднує в собі всі елементи попередньої відповіді.
Thornkey

2

Як зазначила copeland3300, моя проблема полягала в тому, що мій скрипт працює з папки блокнот ++, тому неможливо було знайти інші файли проекту, такі як файл бази даних, модулі тощо. Я вирішив проблему за допомогою стандартної команди «Блокнот ++» запустити ( F5) та введення тексту:

cmd /k  "cd /d "$(CURRENT_DIRECTORY)" & python "$(FULL_CURRENT_PATH)""

Пітон був у моїй ПАТ. Вікно Cmd залишалося відкритим після завершення сценарію.


1

Подовження відповіді Reshure

  1. Open Run → Run ... з рядка меню в Notepad ++ (ярлик: F5)

  2. У вказаному просторі введіть:

    "$(FULL_CURRENT_PATH)"  -1
  3. Клацніть Виконати

та да!


також для обробки помилок оберніть весь код у спробі, окрім блоку, імпортуйте прослідку за межами спроби, крім блоку (я дійсно не знаю, чи можна імпортувати прослідкування всередину), а в частині, крім частини, додати,traceback.print_exc();input()
Aditya Shankar

1

Я хотів би уникати використання повного шляху до каталогу python у макросі Notepad ++. Я спробував інші рішення, наведені на цій сторінці, вони не вдалися.

Я працюю на моєму ПК:

У Блокноті ++ натисніть F5.

Скопіюйте / вставте це:

cmd /k cd /d $(CURRENT_DIRECTORY) && py -3 -i $(FULL_CURRENT_PATH)

Введіть.


0

Я почав використовувати Notepad ++ для Python зовсім недавно, і цей метод я вважав дуже простим. Після того, як ви будете готові запустити код, клацніть правою кнопкою миші на вкладці свого коду у вікні «Блокнот ++» та виберіть «Відкрити папку, що містить в cmd». Це відкриє командний рядок у папку, де зберігається поточна програма. Все, що вам потрібно зробити зараз - це виконати:

пітон

Це було зроблено в Notepad ++ (збірка 10 січня 2015).

Я не можу додати скріншоти, тому ось повідомлення в блозі із скріншотами - http://coder-decoder.blogspot.in/2015/03/using-notepad-in-windows-to-edit-and.html


0

У Блокноті ++ перейдіть до пункту Виконати → Виконати ... , виберіть шлях та idle.pyфайл вашої установки Python:

C:\Python27\Lib\idlelib\idle.py

додайте пробіл і це:

"$(FULL_CURRENT_PATH)"

і ось ти!

Демонстрація відео:

https://www.youtube.com/watch?v=sJipYE1JT38


0

Якщо хтось зацікавлений передати аргументи до cmd.exe та запустити скрипт python у віртуальному середовищі, це кроки, які я використав:

На Блокноті ++ -> Виконати -> Виконати, я вводя наступне:

cmd /C cd $(CURRENT_DIRECTORY) && "PATH_to_.bat_file" $(FULL_CURRENT_PATH)

Тут я входжу в каталог, в якому існує файл .py, щоб він мав доступ до будь-яких інших відповідних файлів, що знаходяться в каталозі коду .py.

А у файлі .bat у мене є:

@ECHO off
set File_Path=%1

call activate Venv
python %File_Path%
pause

0

Ви можете запустити свій скрипт через cmd і бути в каталозі скриптів:

cmd /k cd /d $(CURRENT_DIRECTORY) && python $(FULL_CURRENT_PATH)

0

Зазвичай я віддаю перевагу запуску моїх скриптів python на нативної інтерактивної оболонці IDLE python, а не в командному рядку чи щось подібне. Я спробував це, і це працює на мене. Просто відкрийте "Виконати> Виконати ...", а потім вставте код нижче

python  -m idlelib.idle -r "$(FULL_CURRENT_PATH)"

Після цього ви можете зберегти його за допомогою гарячої клавіші.

Ви повинні переконатися, що потрібний пітон доданий та зареєстрований у змінних вашого середовища.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.