2015-05-29 116 views
1

我正在使用Python 2.6,並且我有一個包含字符串的變量(我已經發送了它的套接字,現在我想用它做點什麼)。 的問題是,我得到以下錯誤:忽略轉義序列

TypeError: file() argument 1 must be encoded string without NULL bytes, not str

我看它之後,我發現,這個問題可能是,我傳送給字符串中包含「\ 0」,但它不是一個字面字符串,我可以用雙反斜槓編輯或在手邊添加'r',那麼是否有辦法告訴python忽略轉義序列並將整個事件視爲字符串?

(例如 - 我不想蟒蛇治療序列\ 0作爲空字符,而是我希望它可以作爲一個反斜槓字符後跟一個零字符處理)

+0

爲什麼你不能只是's.replace('\ 0','')'(假設's'是你的字符串)?在Python 2.7中,'chr(0).replace('\ 0','')'爲我返回空字符串。 –

+0

@ Two-BitAlchemist我已經將圖像轉換爲字符串,現在我試圖通過互聯網發送它,因此我沒有直接訪問字符串本身。 我不想用空字符串替換\ 0,我希望python把它當作一個反斜槓字符,後跟一個零字符。 – PyStudent51

+0

你對你的字符串有什麼瞭解?它是否包含「\ 0」作爲其最後一個字符?也許你可以在這裏展示'repr(s)'。 – dlask

回答

1

考慮所有評論它看起來像錯誤地使用PIL/Pillow API,即Image.open函數需要文件名稱而不是文件數據。