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=3b=4print a+b

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

运行结果:

 

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

import os
os.mkdir("123_123")
if __name__ == '__main__':a=3b=4print 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=3b=4print 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 旧电脑来说,真要命,容易死机。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/129046.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RTSP流媒体服务器EasyNVR安防视频云服务平台如何手动配置Onvif探测功能?

安防监控系统EasyNVR视频云存储平台可实现设备接入、实时直播、录像、检索与回放、视频云存储、视频分发等视频能力服务,可覆盖全终端平台(pc、手机、平板等终端),在智慧工厂、智慧工地、智慧社区、智慧校园等场景中有大量落地应用…

2023上半年京东运动鞋服市场数据分析(京东数据运营)

大众线下运动生活恢复,掀起新一轮户外潮流,运动热潮迭起。由此产生的运动鞋服及专业装备需求,为运动品牌们带来了诸多增长机会。近日各大运动品牌陆续发布上半年财报,回答了品牌对复苏机遇、发展挑战的应对情况。接下来结合具体数…

[ 云计算 华为云 ] 解决办法:如何更换华为云云耀云服务器L实例的镜像 | 文末送书

文章目录 问题描述分析原因解决办法文末送书《ANSYS Workbench项目分析与案例实操详解》博主推荐理由本书内容简介本书作者简介 废话在前(直接看解决办法的这段可以过):讲道理,一般情况下云服务器,镜像是随便更换的&am…

计算机专业毕业设计项目推荐02-个人医疗系统(Java+原生Js+Mysql)

个人医疗系统(Java原生JsMysql) **介绍****系统总体开发情况-功能模块****各部分模块实现** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较了解计算机专业的毕业设计流程以…

《React vs. Vue vs. Angular:2023年的全面比较》

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

linux配置本地yum源

在本地部署服务器时,因为无法联网导致没法使用外网yum源,会对安装服务有些影响。 不过可以通过本地光盘部署yum源赖解决问题。 1.查看一下虚拟机是否有sr0这个文件 ll /dev/sr0 2.创建一个文件做挂载 mkdir /media/cdrom/ mount /dev/sr0 /media/cdrom…

JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)

一、漏洞说明 JBoss中/invoker/JMXInvokerServlet路径对外开放,JBoss的jmx组件支持反序列化。JBoss在/invoker/JMXInvokerServlet请求中读取了用户传入的对象,然后我们利用Apache Commons Collections中的Gadget执行任意代码。 二、影响版本 JBoss Enter…

Nosql之Redis配置与命令

目录 关系数据库与非关系型数据库 关系型数据库 非关系型数据库 关系型数据库和非关系型数据库区别 非关系型数据库产生背景 Redis Redis简介 redis优点 速度快的原因 Redis 安装部署 redis命令 Redis 服务控制 Redis 命令工具 redis-cli redis-benchmark Redis…

痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU硬件那些事(2.3)- 串行NOR Flash下载算法(J-Link工具篇)

https://www.cnblogs.com/henjay724/p/13770137.html 大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是J-Link工具下i.MXRT的串行NOR Flash下载算法设计。 在i.MXRT硬件那些事系列之《在串行NOR Flash XIP调试原理》一文中,痞…

开赛啦!第六届“中国法研杯”司法人工智能挑战赛精彩启幕

9月9日,第六届“中国法研杯”司法人工智能挑战赛(简写为“LAIC2023”)在福建厦门正式拉开帷幕,主办方中国司法大数据研究院(以下简称“中国法研”)以及厦门市思明区政府、厦门海丝办有关领导共同参加了启动…

尚硅谷大数据项目《在线教育之离线数仓》笔记008

视频地址:尚硅谷大数据项目《在线教育之离线数仓》_哔哩哔哩_bilibili 目录 P123 P124 P125 P126 P127 P128 P129 P123 Apache Superset是一个现代的数据探索和可视化平台。它功能强大且十分易用,可对接各种数据源,包括很多现代的大数…

时序分解 | MATLAB实现RIME-VMD霜冰优化算法优化VMD变分模态分解信号分量可视化

时序分解 | MATLAB实现RIME-VMD霜冰优化算法优化VMD变分模态分解信号分量可视化 目录 时序分解 | MATLAB实现RIME-VMD霜冰优化算法优化VMD变分模态分解信号分量可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 RIME-VMD【23年新算法】霜冰优化算法优化VMD变分模态分…

Advanced FX Creator v2.6e多种粒子特效与光照资源

这是一个包含动态粒子魔法2和全局照明效果的特效资源,300多个预制件,包括各种先进的效果!!! 下载链接在底部

代码随想录第46天|139.单词拆分,了解多重背包,背包总结

139.单词拆分 动规五部曲 1.确定valid数组以及下标的含义 valid[i] : 字符串长度为i的话,valid[i]为true,表示可以拆分为一个或多个在字典中出现的单词。 2.valid初始化 valid[0]一定要为true,否则递推下去后面都都是false了 3.递推公式…

《低代码指南》——低代码+AI,智能化的构建数字应用

LCHub低代码社区:对低代码平台在AI领域的应用及其成果进行了深入阐述。他强调,在AI时代,工程化的重要性不容忽视,同时,复杂系统建设和数据模型驱动开发也占据了核心地位。 顾伟不仅深入探讨了低代码零代码平台在业界的不同分类和使用场景,还详细解读了低代码平台的功能架…

C++ STL教程

C 标准模板库的核心包括:(1)容器(Containers);(2)算法(Algorithms);(3)迭代器(iterators) &#…

百望云蝉联2023「Cloud 100 China 」榜单 综合实力再获认可

9月7日,2023 Cloud 100 China 榜单于上海中心正式发布,榜单由靖亚资本与崔牛会联合推出,百望云凭借着过硬的综合实力与卓越的技术创新能力,再次荣登榜单,位居第六位。 本届评选,Top 100 企业的数据指标的权…

拦截器学习

什么是拦截器 Spring MVC 中的拦截器( Interceptor )类似于ServLet中的过滤器( Filter ),它主要用于拦截用户请求并作出相应的处理。例如通过拦截器可以进行权限验证、记录请求信息的日志、判断用户是否登录等。 工作原理 一个拦截器,只有 preHandle …

【SpringCloud微服务--Eureka服务注册中心】

SpringCloud微服务全家桶学习笔记【持续更新】 gitee仓库 内容:SpringCloud SpringCloud alibaba 技术栈:Java8mavengit,githubNginxRabbitMQSpringBoot2.0 微服务架构概述 微服务架构是一种架构模式,它提倡将单一应用程序划…

局域网内部如何实现文件夹共享

这里写自定义目录标题 1.创建文件夹test2.选择共享--添加用户3.选择高级共享 1.创建文件夹test 2.选择共享–添加用户 3.选择高级共享