2012-02-14 214 views
-1

我一直在使用以下方式在python腳本中加入路徑我一直在編碼以允許Linux/Windows系統之間的最大兼容性;操作系統獨立構建路徑

path = join(dirname(__file__),'..','..','folder','destination') 

它完美地在Linux上,但是當我現在在Windows中運行這個它加入了雙\\而不只是一個? 我確信我在之前的某個地方看到過這樣的事情,但現在找不到它,現在我發生了這種事。 (例如C:\ program files \ folder \)這會導致腳本錯誤,並且找不到這樣的文件或目錄。

編輯: 而且我找不到任何解決方案,這是因爲它實際上是工作的所有一起,記錄器模塊輸出的日誌錯誤實際上添加的雙斜線,誤差是有關一試的原因趕上我使用過,所以實際上上面的行完美適用於Linux/Windows。

+1

[Windows上奇怪的路徑分隔符]可能的重複(http://stackoverflow.com/questions/6928789/strange-path-separators-on-windows) – Marcin 2012-02-14 17:30:57

+0

我做了很多。可悲的是我沒有嘗試單詞分隔符,我正在更具體地查找路徑搜索查詢,但沒有給我任何有用的結果 – Draineh 2012-02-14 17:34:15

+0

此外,該鏈接似乎與我的查詢無關,這與字符串有關,但與來自什麼我知道我使用os.path中的連接函數,它正在爲我構建路徑並處理斜槓 – Draineh 2012-02-14 17:42:29

回答

3

os.path.join可能是你一直在python文檔中尋找的東西。

+0

這就是我在上面的例子中使用的 – Draineh 2012-02-14 17:40:35

+0

我的糟糕的混合語言現在......我第一眼看到這個問題表明你正在使用'string.join'。明確聲明'os.path.join'可能會有所幫助,當我們不得不繼續的時候就是你所鍵入的;) – istruble 2012-02-14 18:12:23

+0

對不起,我的壞!我假設我做了一些愚蠢的事情,有人會馬上發現它,因爲我找不到解釋它的互聯網上的任何東西,事實證明它一直在工作,RE:我的編輯上面。 – Draineh 2012-02-14 18:51:27

相關問題