Python中是否有一种简单的方法可以解析..
之类的路径运算符?例如,是否存在将/../../test/../path
转换为/path
的函数调用?
答案 0 :(得分:21)
您可以使用os.path.realpath()
获取规范路径。要获得规范化的相对路径,请使用os.path.normpath()
。
答案 1 :(得分:7)
您可以在abspath
模块中使用os.path
。
os.path.abspath则(路径)
返回标准化的绝对值 路径名路径的版本。最多的 平台,这相当于 normpath(join(os.getcwd(),path))。
答案 2 :(得分:5)
如果您使用的是pathlib库,则使用的方法是resolve
:
In [304]: print(p)
/group_workspaces/cems2/fiduceo/Users/gholl/logs/2016/08/10/srf_errorprop/../../../../../scratch/accidentally_deleted_shift_log
In [305]: print(p.resolve())
/group_workspaces/cems2/fiduceo/Users/gholl/scratch/accidentally_deleted_shift_log
答案 3 :(得分:3)
您可以使用os.path.abspath
os.path
功能