(パラメーターリストから)パスのリストを受け取り、その上で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"'
が、良くありません。
何か案は?