2016-06-13 51 views
0

我想將文本文件的擴展名重命名爲zip,建議here。 正在編寫的文件基於來自服務器的base64編碼響應,在寫入之前我正在對其進行解碼。在Python 2.7中重命名文件擴展名

這是我的代碼片段:

f = open("response.txt","wb") 
f.write(json.loads(response.text)['Binary'].decode('base64')) 
f.close() 
file1 = "C:\Users\xyz\response.txt" 
base = os.path.splitext(file1)[0] 
os.rename(file1, base + ".zip") 

我收到以下錯誤,即使該文件是在我的代碼指定的絕對路徑:

WindowsError: [Error 123] The filename, directory name, or volume label syntax is incorrect 

請協助。

+0

'打印基地+ 「的.zip」'' –

+0

打印os.path.exists(file1)' –

+0

您已收到在下面提供了正確的答案,但我會留下上述評論。當你遇到一個錯誤時,開始測試你的假設。就像打印語句一樣簡單就可以完成小腳本的工作。如果你運行這些打印語句,你會發現問題。 –

回答

2
file1 = "C:\Users\xyz\response.txt" 

「\ r」是代表回車的單個字符。您可能沒有名稱中包含回車符的文件。如果您打算將它作爲反斜槓後跟一個R,請使用原始字符串。

file1 = r"C:\Users\xyz\response.txt" 
0

嘗試改變這一行:

file1 = "C:\Users\xyz\response.txt" 

這樣:

file1 = "C:\\Users\\xyz\\response.txt" 

或該:

file1 = r"C:\Users\xyz\response.txt"