notepad++ 配置 python 以及Anaconda中的python(已解决)

说明,无论是自己的电脑单独安装的python 还是Anaconda虚拟环境安装的python都是一样的。区别就是 独立安装的python 的exe文件路径添加的环境变量了,不需要制定它的路径直接运行下面的命令就可以,而Anaconda中的python.exe的文件夹并没有在虚拟环境,需要自己单独设置。

第一种情况:单独安装python

复制代码
cmd /k python "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT
  • cmd /k python: 表示打开 Cmd 窗口,运行 /k 后边的命令,并且执行完毕后保留窗口。此处即 Python(因为在环境变量里已经添加了 Python 目录,所以这里不用指定 Python 程序的目录,就可直接找到)
  • $(FULL_CURRENT_PATH) :Notepad++ 的宏定义,表示当前文件的完整路径。
  • & 用来连接多条命令
  • ECHO:换行
  • PAUSE: 表示运行结束后暂停( Cmd 中显示"请按任意键继续. . ."),等待一个按键继续
  • EXIT: 表示"按任意键继续. . ."后,关闭命令行窗口。

命令方式的缺陷

当 Python 脚本需要创建文件或目录时,执行脚本,发现在脚本所在的目录下没有生成的文件或目录,查找一下的话,发现生成的文件在 Notepad++ 的安装目录下。比如下面的脚本,想在脚本所在的目录下,创建一个子目录 testdir

复制代码
# create directoryimport osCurPath = os.path.abspath('.')print CurPathJoinPath = os.path.join( CurPath, 'testdir')print JoinPathos.mkdir( JoinPath )

发现在脚本所在的目录下没有,而在 D:\Program Files (x86)\Notepad++ 下却生成了一个 testdir 文件夹。

所以为了解决这个问题,

使用下面的代码打印当前工作目录:

复制代码
import osprint os.getcwd()

第二种情况 Anaconda 中的python

这里需要 第一种情况 中的命令: cmd /k cd "(CURRENT_DIRECTORY)" & python "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT

将它修改为 :

复制代码
cmd /k D:\ProgramData\anaconda3\python.exe "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT

D:\ProgramData\anaconda3\python.exe 是你的anaconda的python.exe所在的位置。

现在清楚了吧。具体操作

实际操作一下:

(两种情况类同,就是添加上面的一个命令就可以)

打开notepad++,哪个版本都无所谓。

点击一下运行(R):如下图。

把刚才的命令行,输入进去。注意 python.exe的路径。如果你是自己安装的python,也可以按照第二种方法,不需要环境变量指导。

输入的命令:

复制代码
cmd /k C:\ProgramData\Anaconda3\envs\python27\python.exe "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT

亲测,"$(FULL_CURRENT_PATH)" 不能改;否则找不到程序所在的文件夹。

运行程序:

复制代码
if __name__ == '__main__':

		a=3
		b=4
		print a+b

注意 python的编译格式,不是空格,

运行结果:

在程序中 ,添加直接在当前目录下创建文件夹的命令,试一试效果

复制代码
import os
os.mkdir("123_123")
if __name__ == '__main__':

		a=3
		b=4
		print a+b

运行一下,看看这个123_123文件夹 创建在哪里了。

去Notepad++的安装目录看看

为了解决这个问题,大家不要直接创建文件夹,

网上说 先使用 os.getcwd() 找文件所在的根目录,然后再创建。这种方法不行(亲测)。

不信,你请看下面:

复制代码
import os
import sys
path = "123_123"
root = os.getcwd()
pathdir=os.path.join(root, path)
# see the print
print pathdir
#os.mkdir(pathdir)

if __name__ == '__main__':

		a=3
		b=4
		print a+b

上面的代码 ,print pathdir ,显示创建的路径。

这是什么鬼啊。这是Notepad++的安装目录,不是我自己创建的工程目录。

查看一下 os.getcwd() 的用法

很显然。Notepad++系统的安装路径改变不了。

我cmd -》python 进入python3.6。这时就可以找到我创建的工程目录。这难道是版本问题??

这说明不是os.getcwd()的锅,应该是Notepad++的锅。

再用cmd命令行证明一下

cmd命令行的方式运行一下?

我重新配置python3.8 运行一下

好吧。总结一下,Notepad++的优缺点:1)简单的编程是没问题的 2)建议不要在Notepad++中创建的文件夹。 也有可能是我的Notepad++本部比较老,功能跟不上。

有新版本Notepad++的朋友们可以试一试,试完 可以告诉我。

朋友们,Notepad++运用python编程就可以了,还是很方面的。至于让它........

为什么不用pycharm,我的妈呀,这个pycharm运行内存最大能够达到2G多,甚至3G,太占内存了,对于我的win7 旧电脑来说,真要命,容易死机。

相关推荐
韩曙亮1 分钟前
【人工智能】AI 人工智能 技术 学习路径分析 ① ( Python语言 -> 微积分 / 概率论 / 线性代数 -> 机器学习 )
人工智能·python·学习·数学·机器学习·ai·微积分
Yue丶越6 分钟前
【C语言】自定义类型:结构体
c语言·开发语言
合作小小程序员小小店7 分钟前
桌面开发,点餐管理系统开发,基于C#,winform,sql server数据库
开发语言·数据库·sql·microsoft·c#
笃行客从不躺平11 分钟前
线程池监控是什么
java·开发语言
星轨初途13 分钟前
C++的输入输出(上)(算法竞赛类)
开发语言·c++·经验分享·笔记·算法
喵叔哟41 分钟前
6.配置管理详解
后端·python·flask
曾经的三心草1 小时前
基于正倒排索引的Java文档搜索引擎3-实现Index类-实现搜索模块-实现DocSearcher类
java·python·搜索引擎
dangdang___go1 小时前
动态内存管理||malloc和free.realloc和calloc
c语言·开发语言·算法·动态内存管理
YA3331 小时前
mcp-grafana mcp 使用stdio报错
java·开发语言
周杰伦_Jay1 小时前
【Go 语言主流 Web】 框架详细解析
开发语言·后端·微服务·架构·golang