我正在嘗試獲取當前工作目錄并將其添加到帶有os.getcwd. 因為 Windows 在目錄路徑中使用正斜杠,所以我需要將所有這些斜杠更改為反斜杠,以便它在 python 中工作。我試過的:import osold = getcwd()new = old.replace("\", "/")file_path = (new + "folder/filename")print(file_path以上是拋出錯誤SyntaxError: EOL while scanning string literal
1 回答

開滿天機
TA貢獻1786條經驗 獲得超13個贊
因為windows在目錄路徑中使用了正斜杠
它不——它使用反斜杠(但它也接受正斜杠)。
無論操作系統如何,這都有效:1
import os
file_path = os.path.join(os.getcwd(), 'folder', 'filename')
# also works:
# file_path = os.path.join(os.getcwd(), 'folder/filename')
…但是你得到的特定錯誤是因為你試圖在 Python 字符串中使用未轉義的反斜杠。由于字符串中的反斜杠具有特殊含義,因此需要對其用法進行轉義:使用"\\"而不是"\". 但如上所述,這在這里無關緊要(99% 的時間在處理路徑時)。
1更簡潔的方法是 via pathlib,它使用正確類型的對象而不是字符串來編碼路徑:
import pathlib
file_path = pathlib.Path('.').absolute() / 'folder' / 'filename'
- 1 回答
- 0 關注
- 355 瀏覽
添加回答
舉報
0/150
提交
取消