在python中修复'../../'路径

roo*_*ook 18 python

在Python中有一种简单的方法来解决路径运算符..吗?例如,是否有一个函数调用将转换/../../test/../path/path

Sve*_*ach 27

您可以使用os.path.realpath()获取规范路径.要获得规范化的相对路径,请使用os.path.normpath().


Jus*_*ini 7

您可以abspathos.path模块中使用.

os.path.abspath则(路径)

返回路径名路径的规范化绝对化版本.在大多数平台上,这相当于normpath(join(os.getcwd(),path)).


ger*_*rit 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
Run Code Online (Sandbox Code Playgroud)