供参考。绝对路径是通往计算机上某个位置的完整路径。相对路径是有关您当前工作目录(PWD(的某些文件的路径。例如:
绝对路径: C:/users/admin/docs/stuff.txt
如果我的PWD是C:/users/admin/
,则stuff.txt
的相对路径为:docs/stuff.txt
注意,PWD 相对路径=绝对路径。
很酷,很棒。现在,我编写了一些脚本检查文件是否存在。
os.chdir("C:/users/admin/docs")
os.path.exists("stuff.txt")
如果存在stuff.txt
,则返回TRUE
,并且它 works 。
现在,如果我写信,
os.path.exists("C:/users/admin/docs/stuff.txt")
这也返回TRUE
。
我们是否需要使用另一个时间?Python如何寻找路径有一种方法论吗?它首先尝试一个然后另一个吗?
谢谢!
如果您不知道用户将在哪里执行脚本,则最好使用os
和__file__
计算用户系统上的绝对路径。
__file__
是每个python脚本上的全局变量集,该脚本将相对路径返回到包含它的 *.py
文件。
import os
my_absolute_dirpath = os.path.abspath(os.path.dirname(__file__))
最大的考虑因素可能是可移植性。如果将代码移至另一台计算机,并且需要访问其他文件,那么其他文件将在哪里?如果相对于您的程序,它将位于相同的位置,请使用相对地址。如果它位于相同的绝对位置,请使用绝对地址。