我試圖清理所有的HTML的一個字符串,這樣最終輸出是一個文本文件。我對各種「轉換器」進行了一些研究,並開始傾向於爲實體和符號創建我自己的字典並對字符串進行替換。我正在考慮這個,因爲我想讓這個過程自動化,並且底層html的質量有很大的變化。要開始比較我的解決方案的速度,例如pyparsing我決定測試使用字符串替換方法\ XA0的替代方案之一。我得到一個如何使用Unicode工作在Python
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 0: ordinal not in range(128)
的實際代碼行是
s=unicodestring.replace('\xa0','')
反正,我決定,我需要與R鍵前言,所以我跑了這行代碼:
s=unicodestring.replace(r'\xa0','')
它運行沒有錯誤,但我當我看着一片s我看到\ xaO仍然存在
爲什麼要在'\ xa0'前加一個r?這使它成爲一個原始字符串 - 也就是說,它實際上包含反斜槓,x,a,0.如果沒有r,它包含一個帶有十六進制代碼a0的單個字符,我認爲它就是你想要的。 – 2009-04-15 18:26:42
因爲我試圖猜測爲什麼我得到錯誤,並且我知道有時要強制讀取\,您必須將其設置爲字符串文本,並且\ xa0實際上存在於我的源文件中。什麼是十六進制代碼a0? – PyNEwbie 2009-04-15 18:44:23