如何在 Notepad++ 中执行 Python 脚本?
- 2025-03-18 08:54:00
- admin 原创
- 51
问题描述:
我更喜欢使用 Notepad++ 进行开发,
如何通过 Notepad++ 执行 Python 中的文件?
解决方案 1:
第一个选项:(最简单,推荐)
打开 Notepad++。在菜单上转到:运行 -> 运行.. (F5)。输入:
C:Python26python.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”,如果该键存在,它将从该键的第一个子键中获取路径。
检查该键是否存在,如果不存在,您可以尝试创建它。
解决方案 2:
@ Ramiz Uddin 的回答绝对值得更多关注:
打开 Notepad++
在菜单上转到:运行→运行.. (F5)
输入:
cmd /K python "$(FULL_CURRENT_PATH)"
解决方案 3:
以下是对我有用的方法:
打开 notepad++,按 F5,会弹出一个小框:
类型:C:\Python27\python.exe -i "$(FULL_CURRENT_PATH)"(适用于 Python 2.7)。
然后另存为...,每次要运行某项操作时,选择自己的组合键来启动它
解决方案 4:
我还想直接从 Notepad++ 运行 python 文件。在线上找到的最常见选项是使用内置选项Run
。然后你有两个选择:
在控制台中运行 python 文件(在 Windows 中是命令提示符),代码如下(链接:):
C:Path oPythonpython.exe "$(FULL_CURRENT_PATH)"
(如果您的控制台窗口在运行后立即关闭,那么您可以将其添加cmd /k
到您的代码中。链接:)这可以正常工作,您甚至可以通过将其添加到您的代码中(链接:)以交互模式运行文件。
-i
在IDLE中运行 python 程序,代码如下(链接:,在这些链接中使用,但我使用,因为会自动设置正确的当前工作目录):
C:Path oPythonLibidlelibidle.py
`C:Path oPythonLibidlelibidle.bat`idle.bat
C:Path oPythonLibidlelibidle.bat "$(FULL_CURRENT_PATH)"
实际上,这不会在IDLE Shell中运行您的程序,而是在IDLE Editor中打开您的 python 文件,然后您需要单击Run Module
(或单击 F5)来运行该程序。因此,它会在IDLE Editor中打开您的文件,然后您需要从那里运行它,这违背了从 Notepad++ 运行 python 文件的目的。
但是,通过在线搜索,我发现了在代码中添加“-r”的选项(链接:):
C:Path oPythonLibidlelibidle.bat -r "$(FULL_CURRENT_PATH)"
这将在IDLE Shell中运行你的 python 程序,并且因为它处于 IDLE 状态,所以默认情况下处于交互模式。
通过内置选项运行 Python 文件的问题Run
在于,每次运行 Python 文件时,都会打开新的控制台或 IDLE 窗口并丢失以前执行的所有输出。这对某些人来说可能并不重要,但是当我开始用 Python 编程时,我使用了Python IDLE,因此我习惯在同一个IDLE Shell 窗口中多次运行 Python 文件。从 Notepad++ 运行 Python 程序的另一个问题是,您需要手动保存文件,然后单击Run
(或按 F5)。要解决这些问题(据我所知*),您需要使用 Notepad++ 插件。从 Notepad++ 运行 Python 文件的最佳插件是
NppExec。 (我也尝试了PyNPP和Python 脚本。PyNPP在控制台中运行 python 文件,它可以工作,但是您可以通过内置选项在没有插件的情况下执行此操作,并且Python 脚本用于运行与 Notepad ++ 交互的脚本,因此您无法运行 python 文件。)要使用NppExec插件运行您的 python 文件,您需要转到然后输入类似这样的内容(链接:):Run
`Plugins -> NppExec -> Execute`
C:Path oPythonpython.exe "$(FULL_CURRENT_PATH)"
使用NppExec ,您还可以在使用命令运行之前保存 python 文件,使用命令设置工作目录或使用命令以交互模式运行 python 程序。我在网上找到了很多链接 ( ) 提到了这些选项,但我在NppExec 手册中找到了使用NppExec运行 python 程序的最佳方法,其中有一章包含以下代码: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-
关闭控制台的内部消息(绿色)
我在 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
,重新启动 Notepad++,转到 Notepad++ 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):
如下所示。
解决方案 5:
首先从https://www.python.org/downloads/安装 Python
运行安装程序
重要 请务必检查以下两项:
为所有用户安装启动器
将 Python 3.6 添加到路径
单击立即安装并完成安装。
打开 notepad++ 并从插件管理器安装插件 PyNPP。我使用的是 N++ 6.9.2
将新文件保存为new.py
输入 N++
import sys
print("Hello from Python!")
print("Your Python version is: " + sys.version)
按 Alt+Shift+F5
就这么简单。
解决方案 6:
在菜单上转到:“运行”-->“运行...”(或直接按F5
)。
对于 Python 2 输入:
py -2 -i "$(FULL_CURRENT_PATH)"
对于 Python 3,输入:
py -3 -i "$(FULL_CURRENT_PATH)"
参考:
为了更好地理解该py
命令:
py -h
另一个有助于理解该py
命令的链接:如何在 Windows 7 中运行 python 2 和 3?
感谢Reshure 的回答,让我走上了正确的道路来解决这个问题。
解决方案 7:
所有针对 Run->Run 菜单选项的答案都与 cmd 的“/K”开关一起使用,因此终端保持打开状态,或者与 python.exe 的“-i”一起使用,因此 python 强制交互模式 - 两者都保留输出供您观察。
但是cmd /k
你必须输入-exit
来关闭它。如果你觉得输入太多了(对我来说确实如此 :),可以使用 Run 命令python -i
`quit()`
cmd /k C:Python27python.exe "$(FULL_CURRENT_PATH)" & pause & exit
C:Python27python.exe
- 显然是你的 python 安装的完整路径(或者只是python
如果你想使用用户路径中的第一个可执行文件)。
&
是 Windows 中下一个命令的无条件执行 - 无条件,因为它运行而不管前一个命令的 RC 如何(&&
是“和” - 仅当前一个命令成功完成后才运行,||
- 是“或”)。
pause
- 打印“按任意键继续...”并等待任意键(如果需要可以抑制该输出)。
exit
- 好吧,为你输入出口 :)
所以最后,cmd
运行python.exe
当前文件并保持窗口打开,pause
等待您按任意键,exit
最后在您按下任意键后关闭窗口。
解决方案 8:
之前提出的解决方案对我都不起作用。需要稍作修改。
在 Notepad++ 中按 F5 后,输入:
cmd /k "C:Python27python.exe $(FULL_CURRENT_PATH)"
命令提示符保持打开,以便您可以看到脚本的输出。
解决方案 9:
我使用 NPP_Exec 插件(在插件管理器中找到)。安装后,打开控制台窗口(ctrl+~)并输入:
cmd
这将启动命令提示符。然后输入:
C:Program FilesNotepad++> **python "$(FULL_CURRENT_PATH)"**
执行您正在处理的当前文件。
解决方案 10:
我希望这里的人们能发布步骤,而不是仅仅发布总体概念。我最终让 cmd /k 版本正常工作。
一步一步的说明如下:
在 NPP 中,点击菜单项:运行
在子菜单中,单击:运行
在运行...对话框中,在要运行的程序字段中,删除任何现有文本并输入:cmd /K "$(FULL_CURRENT_PATH)" /K 是可选的,如果您愿意,它会保持打开脚本运行时创建的窗口。
点击保存...按钮。
快捷方式对话框打开;如果您需要键盘快捷键,请填写该对话框(有一条注释说“这将禁用加速器”,不管是什么,所以也许您不想使用键盘快捷键,尽管当您不需要加速器时分配一个可能没有什么坏处)。我认为您必须在某个地方告诉 NPP Python.exe 文件在哪里(例如,对我来说:C:\Python33\python.exe)。我不知道您在哪里或如何做到这一点,但在尝试了各种方法后,我能够做到这一点——我不记得是哪次尝试奏效了。
解决方案 11:
我的问题是,正如copeland3300 提到的,我的脚本是从 notepad++ 文件夹运行的,因此无法找到其他项目文件,例如数据库文件、模块等。我使用标准 notepad++“运行”命令(F5)并输入以下内容解决了该问题:
cmd /k "cd /d "$(CURRENT_DIRECTORY)" & python "$(FULL_CURRENT_PATH)""
Python 在我的 PATH 中。脚本完成后,Cmd 窗口保持打开状态。
解决方案 12:
我想避免在 Notepad++ 宏中使用完整的 python 目录路径。我尝试了此页面中提供的其他解决方案,但都失败了。
在我的电脑上运行的是:
在 Notepad++ 中,按 F5。
复制/粘贴此内容:
cmd /k cd /d "$(CURRENT_DIRECTORY)" && py -3 -i "$(FULL_CURRENT_PATH)"
进入。
解决方案 13:
这里没有答案,或者我找到的插件没有提供我想要的东西。一种极简的方法是按下快捷键来启动我在 Notepad++ 上编写的 Python 代码,最好不使用插件。
我有适用于 Windows 8.1 x86_64 的 Python 3.6(64 位)和 Notepad++ 32 位。在 Notepad++ 中编写 Python 脚本并保存后,按 F5 键Run
。然后写入:
"C:Path oPythonpython.exe" -i "$(FULL_CURRENT_PATH)"
并点击运行按钮。该i
标志强制终端在代码执行终止后保持静止,以便您检查它。此命令将在 cmd 终端中启动脚本,并且终端将一直停留在那里,直到您通过键入关闭它exit()
。
您可以将其保存为快捷方式以方便使用(我的是 CTRL + SHIFT + P)。
解决方案 14:
上面的解决方案中有一个问题我没有看到解决。Python 将当前工作目录设置为您启动解释器的位置。如果您需要当前工作目录与保存文件的目录相同,那么您可以按 F5 并输入以下内容:
cmd /K cd "$(CURRENT_DIRECTORY)"&C:Users/usernamePython36-32python.exe -i "$(FULL_CURRENT_PATH)"
除非您要将 C:\Users/username\Python36-32\python.exe 替换为您机器上的 Python 解释器的路径。
基本上,您要启动命令行,将目录更改为包含您要运行的 .py 文件的目录,然后运行它。您可以使用“&”符号将任意数量的命令行命令串在一起。
解决方案 15:
扩展Reshure 的答案
从 Notepad++ 菜单栏中打开运行 → 运行...
F5
(快捷方式:)在给定的空间中输入:
"$(FULL_CURRENT_PATH)" -1
单击运行
太棒了!
解决方案 16:
如果有人有兴趣将参数传递给 cmd.exe 并在虚拟环境中运行 python 脚本,这些是我使用的步骤:
在 Notepad++ -> 运行 -> 运行 上,我输入以下内容:
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
解决方案 17:
您可以通过 cmd 运行脚本并进入脚本目录:
cmd /k cd /d $(CURRENT_DIRECTORY) && python $(FULL_CURRENT_PATH)
解决方案 18:
除了关于使用系统范围内安装的 Python 解释器的许多其他答案之外,还有一个适用于 Notepad++ 的 Python 插件。我已经使用过很多次了,效果很好。您甚至可以分配快捷键来运行特定的 Python 脚本。
它是开源和免费的。
源代码和插件位于此处:
https://github.com/bruderstein/PythonScript/
解决方案 19:
我最近开始使用 Notepad++ for Python,我发现这种方法非常简单。一旦您准备好运行代码,请在 Notepad++ 窗口中右键单击代码选项卡,然后选择“在 cmd 中打开包含文件夹”。这将打开命令提示符进入存储当前程序的文件夹。您现在需要做的就是执行:
Python
这是在 Notepad++(Build 2015 年 1 月 10 日)上完成的。
我无法添加屏幕截图,因此这里有一篇带有屏幕截图的博客文章 - http://coder-decoder.blogspot.in/2015/03/using-notepad-in-windows-to-edit-and.html
解决方案 20:
在 Notepad++ 中,转到运行 → 运行...idle.py
,选择Python 安装的路径和文件:
C:Python27Libidlelibidle.py
添加一个空格,然后这样:
"$(FULL_CURRENT_PATH)"
你在这里!
视频演示:
https://www.youtube.com/watch?v=sJipYE1JT38
解决方案 21:
我通常更喜欢在 python 本机 IDLE 交互式 shell 上运行我的 python 脚本,而不是从命令提示符或类似的东西运行。我试过了,对我来说很有效。只需打开“运行 > 运行...”,然后粘贴下面的代码
python -m idlelib.idle -r "$(FULL_CURRENT_PATH)"
之后,您可以使用热键保存它。
您必须确保您所需的 python 已添加并注册在您的环境变量中。
解决方案 22:
以下示例展示如何在 NotePad++ 中运行 Python 脚本,以便根据每行的长度对文本文件中的行进行排序:
通过插件管理安装 PythonScript 插件:
在以下位置创建一个文件sort_lines_by_length.py
(例如)C:Program FilesNotepad++pluginsPythonScriptscripts
:
from Npp import editor
lines = editor.getText().split("
")
lines.sort(key=len)
editor.setText("
".join(lines))
在想要排序的文本文件中运行它:
扫码咨询,免费领取项目管理大礼包!