答案 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
。这是路径计算:不访问文件系统以确认start
或path
的存在或性质。
所以你可以打电话:
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)