python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python os.path.exits()

python中os.path.exits()的坑

作者:樱木之

本文主要介绍了python中os.path.exits()的坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

问题

有时候我们经常会看到类似的代码:

assert os.path.isdir(path_model_dir)
assert os.path.exits(path_model_dir)

此处path_model_dir如果填写的是一个相对路径,那将会是灾难性的。我们需要注意的有以下几个要素:

上面这两段话说明,如果你填写的是相对路径,这里所说的相对路径是相对于当前文件的相对路径,还是相对解释器的相对路径,是相对运行解释器,还是调试解释器,还是相对命令行的中的相对路径?曾在同一个编辑器里编辑代码,在运行的时候是可以直接运行的,但调试的时候却一直报错,后来发现同一编辑器里的调试解释器和运行解释器的相对路径是不同的(惊!)。

而且os.path.exists() 方法并不直接使用sys.path中的路径来查找文件,也不会使用~/.bashrc中的环境变量来查找文件,只会根据相对路径和绝对路径来查找文件。

建议

有两点建议,核心要义在于使用绝对路径。

有些人问sys.path.append(path)中增加的path是用来干嘛的,其实这里面增加的path主要用于import导包的。即如果您想要将其他目录添加到 Python 的模块搜索路径中,可以将这些目录添加到 sys.path 列表中。这将使 Python 在搜索模块时自动包括这些目录。但是需要注意,这种方法是在 Python 导入模块时使用的,而不是在调用 os.path.exists() 方法时。

到此这篇关于python中os.path.exits()的坑的文章就介绍到这了,更多相关python os.path.exits() 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文