我怎样才能获得另一个相对的路径?

时间:2018-01-17 20:34:54

标签: python python-os

Visualization我有一个path1相对于path2,我想从我的脚本获取这个path1,而不是path1或path2。我知道path2的绝对路径。

2 个答案:

答案 0 :(得分:0)

您可以使用os.relpath功能:

  

<强> txt<-readLines("C:\\Users\\abc\\Desktop\\new2.txt") table<-strsplit(txt[grepl("T",substr(txt,1,1))],split = "\\s\\s") table<-do.call("rbind", table)

     

从当前目录或可选的os.path.relpath(path[, start])目录中将相对文件路径返回到path 。这是路径计算:不访问文件系统以确认startpath的存在或性质。

所以你可以打电话:

start

因此,您可以通过相对路径>>> relpath('/home/foo/bar', '/home/qux') '../foo/bar' /home/foo/bar访问/home/qux

或者你的情况:

../foo/bar

其中replath(path2, path_of_script) 是绝对路径。

答案 1 :(得分:0)

做了我自己的功能

import pathlib

def convert_path(path, org_path):
    org_path = pathlib.Path(org_path).parent # need the folder where my file is
    for element in path.split(os.path.sep):
        if element == "..":
            org_path = org_path.parent
        else:
            org_path = org_path.joinpath(element)
    return str(org_path)