说明,无论是自己的电脑单独安装的python 还是Anaconda虚拟环境安装的python都是一样的。区别就是 独立安装的python 的exe文件路径添加的环境变量了,不需要制定它的路径直接运行下面的命令就可以,而Anaconda中的python.exe的文件夹并没有在虚拟环境,需要自己单独设置。
cmd /k python "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & 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()
这里需要 第一种情况 中的命令: 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++的安装目录看看
为了解决这个问题,大家不要直接创建文件夹,
不信,你请看下面:
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++的安装目录,不是我自己创建的工程目录。
很显然。Notepad++系统的安装路径改变不了。
我cmd -》python 进入python3.6。这时就可以找到我创建的工程目录。这难道是版本问题??
这说明不是os.getcwd()的锅,应该是Notepad++的锅。
cmd命令行的方式运行一下?
好吧。总结一下,Notepad++的优缺点:1)简单的编程是没问题的 2)建议不要在Notepad++中创建的文件夹。 也有可能是我的Notepad++本部比较老,功能跟不上。
有新版本Notepad++的朋友们可以试一试,试完 可以告诉我。
朋友们,Notepad++运用python编程就可以了,还是很方面的。至于让它........
为什么不用pycharm,我的妈呀,这个pycharm运行内存最大能够达到2G多,甚至3G,太占内存了,对于我的win7 旧电脑来说,真要命,容易死机。