从当前脚本目录打开文件:一种综合方法
从运行脚本的目录打开文件时,使用避免错误的适当技术。最初,使用 open("Some file.txt", "r") 可能看起来很简单,但在 Windows 上通过双击启动脚本时可能会导致问题。
为了解决这个问题,一个常见的方法方法是利用 os.path.join(sys.path[0], "Some file.txt") 指定文件路径。虽然这在大多数情况下都有效,但在某些情况下可能会失败。
探索替代方案:
考虑包含模块:
问题可以进一步细化为打开文件与包含模块相同的目录。传统技术可能无法充分满足此需求。
可靠的解决方案:
完全可靠的解决方案是使用以下代码:
__location__ = os.path.realpath( os.path.join(os.getcwd(), os.path.dirname(__file__)))
此行可确保准确获取脚本目录,无论启动方法或平台如何。要打开此目录中的文件,只需使用:
f = open(os.path.join(__location__, 'bundled-resource.jpg'))
这种方法已被证明可以有效地将资源与 Windows 和 Linux 上的 Django 应用程序捆绑在一起。
以上是如何可靠地从当前脚本目录打开文件?的详细内容。更多信息请关注PHP中文网其他相关文章!