在Python中获得相对路径的任何优雅方法?

Tim*_*Tim 4 python

假设我要在'Core.dll'之后删除'git pull',所以我写了一个钩子。

import os

dir = os.path.dirname(__file__)
try:
    os.remove(os.path.abspath(dir+os.sep+".."+os.sep+".."+os.sep+"Assets"+os.sep+"Plugins"+os.sep+"Core.dll"))

except OSError:
    pass
Run Code Online (Sandbox Code Playgroud)

假设挂钩路径为'E:\client\.git\hooks',我要删除的文件位于'E:\client\Assets\Plugins\Core.dll'.

我认为我的方法很愚蠢,是否有任何优雅的方法来获得相对路径?

Ant*_*ala 5

使用pathlib

from pathlib import Path

(Path(__file__).absolute().parent.parent.parent/'Assets'/'Plugins'/'Core.dll').unlink()
Run Code Online (Sandbox Code Playgroud)