相对路径方法(Python)

达科夫

我从来没有考虑过任何类型的软件分发(我在该项目中使用python),所以现在我不确定文件名处理的“最佳”或最常用方法。现在,我使用可执行程序从顶层目录对所有图像,配置文件...使用相对路径。

因此,当从其他位置执行程序时,它自然会失败。我的问题是,是否可以将程序的beginnig中的当前工作目录更改为__file__的目录名(它在子shell中执行,所以我看不到此问题-但我想独立运行platfrom,所以我不确定Windows如何处理它,或者如果出现问题我可以使用distutils并安装整个程序来解决(我不想这样做)。还是还有其他(更好)的方法?

因此,基本上我可以轻松解决问题,我只想知道通常要做什么,谢谢您的建议。

马丁·彼得斯(Martijn Pieters)

最佳实践是使用绝对路径。

使用__file__不更改目录路径,而是使用它来计算用于构建绝对路径的基本路径。在顶层模块中,添加:

import os.path

BASE = os.path.dirname(os.path.abspath(__file__))

并重复使用BASE以构建绝对路径:

abspath = os.path.join(BASE, relpath)

更改工作目录几乎是不需要或有用的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章