我正在尝试创建一个函数,它将接收路径列表(来自参数列表),从 os.path 执行几个函数(expandvars、expanduser、normpath),最后加入所有这些路径值。到目前为止,它看起来像这样:
def normjoin(*p):
""" Uses os.path functions to normalize and join paths
*path - all the paths you want to join
return: normalized and joined string
"""
b_results = []
for b in p:
b_results.append(os.path.normpath(os.path.expandvars(os.path.expanduser(b))))
return os.path.join(b_results)
这就是它在实践中的样子:
sharedir = normjoin("~", "Dropbox/SpideroakShared")
我打算在win和linux系统上都使用它。
返回值将看起来像这样' "C:\\Users\\tgoldie", "Dropbox\\SpideroakShared"'
,这是不好的。
有任何想法吗?