2011-08-24 224 views
8

我有2目录:如何计算2目录路径之间的相对路径?

subdir1 = live/events/livepkgr/events/_definst_/ 
subdir2 = live/streams/livepkgr/streams/_definst_/ 

结果必须是:

diff_subdir = ../../../../streams/livepkgr/streams/_definst_/ 
+0

如果每个路径中的顶层目录不同,函数应该做什么? –

回答

16

http://docs.python.org/library/os.path.html

os.path.relpath(路径[,开始])返回的相对文件路径从当前目录或从可选起点移动到路径 。

开始默认为os.curdir。

可用性:Windows,Unix。

版本2.6中的新功能。

16
>>> subdir1 = "live/events/livepkgr/events/_definst_/" 
>>> subdir2 = "live/streams/livepkgr/streams/_definst_/" 
>>> import os 
>>> os.path.relpath(subdir2, subdir1) 
'../../../../streams/livepkgr/streams/_definst_' 
>>>