0
我想創建一個函數,將採取路徑列表(從參數列表中),執行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")
我打算使用這兩個一個雙贏和Linux系統。
返回值看起來像這樣' "C:\\Users\\tgoldie", "Dropbox\\SpideroakShared"'
這是不好的。
任何想法?
修正了誤格式化我的消息(幸運的是沒有實際的代碼。)*在加入( )功能是訣竅。 *「分割」列表,還是隻是將參數發送到函數的方式?謝謝! – beeryardtech
它接受一個列表的元素並將它們作爲參數發送給一個函數(換句話說,它使列表失效)。例如,'f(* [1,2,3])'與'f(1,2,3)'相同。 – asmeurer