java执行python路径_如何在Python中获取当前执行文件的路径?
您无法直接确定正在执行的主脚本的位置 . 毕竟,有时脚本根本不是来自文件 . 例如,它可以来自交互式解释器或仅存储在存储器中的动态生成的代码 .
但是,您可以可靠地确定模块的位置,因为模块始终从文件加载 . 如果使用以下代码创建模块并将其放在与主脚本相同的目录中,则主脚本可以导入模块并使用它来定位自身 .
SOME_PATH / module_locator.py:
def we_are_frozen():
# All of the modules are built-in to the interpreter, e.g., by py2exe
return hasattr(sys, "frozen")
def module_path():
encoding = sys.getfilesystemencoding()
if we_are_frozen():
return os.path.dirname(unicode(sys.executable, encoding))
return os.path.dirname(unicode(__file__, encoding))
SOME_PATH / main.py:
import module_locator
my_path = module_locator.module_path()
如果在不同目录中有多个主脚本,则可能需要多个module_locator副本 .
当然,如果您的主脚本是由某些其他工具加载的,这些工具不允许您导入与您的脚本位于同一位置的模块,那么您就不走运了 . 在这种情况下,您所追求的信息根本不存在于您的程序中的任何位置 . 您最好的选择是向该工具的作者提交错误 .
java执行python路径_如何在Python中获取当前执行文件的路径?相关推荐
- java+script+当前日期_如何在JavaScript中获取当前日期?
如何在JavaScript中获取当前日期? #1楼 您可以使用扩展了 Date对象的Date.js库,从而可以使用.today()方法. #2楼 如果您想对日期格式进行更多的粒度控制,我强烈建议您查看 ...
- java如何实取随机数_java - 如何在Kotlin中获取随机数?
java - 如何在Kotlin中获取随机数? 可以在2个参数之间返回随机整数的通用方法,如ruby,可以使用rand(0..n). 有什么建议吗? 16个解决方案 208 votes 我的建议是In ...
- php mysql 到表最后_如何在PHP中获取MySQL表的最后插入ID?
如何在PHP中获取MySQL表的最后插入ID? 我有一张表,经常插入新数据. 我需要获取表格的最后一个ID. 我怎样才能做到这一点? 它类似于SELECT MAX(id) FROM table吗? g ...
- jquery 获取同级元素_如何在jQuery中获取元素的同级
jquery 获取同级元素 In this post, we will discuss how to get the siblings of an HTML element in jQuery. jQ ...
- python执行的命令_如何在Python中执行外部命令
Python子进程模块允许生成新进程,从Python脚本执行外部命令. 您可以使用这些教程来安装最新版本的Python. 此外,还有许多可用于Python IDE. 就像在Ubuntu系统上安装PyC ...
- python缓冲区_如何在Python中使用Google的协议缓冲区
python缓冲区 When people who speak different languages get together and talk, they try to use a languag ...
- python多项式回归_如何在Python中实现多项式回归模型
python多项式回归 Let's start with an example. We want to predict the Price of a home based on the Area an ...
- vscode怎么安装python库_如何在vscode中安装python库的方法步骤
免费资源网 - https://freexyz.cn/ vscode安装python库 1.已经在vscode中装了python并配置好python运行环境. 检查是否正确配置好运行环境,按Windo ...
- python大括号_如何在python字符串中打印文字大括号字符并在其上使用.format?
如何在python字符串中打印文字大括号字符并在其上使用.format? x = " \{ Hello \} {0} " print x.format(42) 给我:{Hello} ...
- java adt怎么使用_如何在eclipse中添加android ADT ADT插件的安装图文教程
对于程序开发的学者来说,eclipse并不陌生,它为我们提供了一个非常广阔的平台来开发程序.同样我们也可以用它来开发android程序.但是在eclipse中并不能直接开发android程序,需要我们 ...
最新文章
- 高速无人机独立穿越森林,全程自己规划路线,时速高达40公里
- python xpath语法-Python爬虫之XPath语法
- mysql 当前记录集不支持书签_存储过程 分页。当前记录集不支持书签。这可能是提供程序或选定的游标类型的限制。...
- Java相关资料分享(视频+电子书籍)
- iPhone8 和 X 买哪个?听我的
- 小米4391人获1.749亿股股票的激励
- VC++下使用ADO编写数据库程序(关键文章)
- 工程力学考研 可以转计算机专业吗,跨专业考研我是工程力学的本科生,想要考飞行 – 手机爱问...
- 分销商城系统源码开发
- orl_faces数据集分享
- 怎样写好一篇英文论文
- NQueen问题(N皇后问题Java)
- Halcon生成标定描述文件
- Vagrant + VMBox 踩坑记录
- 【面试题】Redis SETEX /SETNX 的用法和区别
- 联通不断发短信-尊敬的用户请回复以下编码办理业务:599
- pysot-toolkit--eval.py笔记(读取算法结果,根据评价指标计算结果并可视化)
- DICTATOR第三周栈与队列作业
- 重庆市涪陵创新计算机学校图片,重庆市涪陵创新计算机学校寝室图片、学校环境好吗...
- hp M1005 激光打印机 通过usb接入路由器 变成网络打印机