python 字串轉列表出現\ufeff的解決方案

來源:互聯網
上載者:User

標籤:read   decode   讀取檔案   print   網路傳輸   big5   編碼方式   遇到   結果   

  在學習python從檔案中讀取檔案,並將檔案中的字串轉化為列表的時候,發現檔案頭多了一個\ufeff字元。

  這個問題前段時間也遇到過了,同樣是上網搜尋了半天才解決,當時只是把問題解決就過去了,但是今天遇到同樣的問題時,知道有這麼一個解決方案,但是怎麼做就是想不起來。古人云,好記性不如爛筆頭,一點沒錯。進入正題。

  幾個概念性的東西   

  ANSCII: 

標準的 ANSCII 編碼只使用7個位元來表示一個字元,因此最多編碼128個字元。擴充的 ANSCII 使用8個位元來表示一個字元,最多也只能 
編碼 256 個字元。

  UNICODE:
使用2個甚至4個位元組來編碼一個字元,因此可以將世界上所有的字元進行統一編碼。

  UTF:
UNICODE編碼轉換格式,就是用來指導如何將 unicode 編碼成適合檔案儲存體和網路傳輸的位元組序列的形式 (unicode ->
str)。像其他的一些編碼方式 gb2312, gb18030, big5 和 UTF 的作用是一樣的,只是編碼方式不同。

在Windows下用文字編輯器建立的文字檔,如果選擇以UTF-8等Unicode格式儲存,會在檔案頭(第一個字元)加入一個BOM標識。具體去除方法看看下面代碼
 1 # filename: example.py 2 # conding=utf-8 3  4 f = open("news.txt", "r",encoding=‘utf-8‘) 5 file = f.read() 6 file_list = file.split(",") 7 print(file_list) 8  9 file_list2 = file.encode(‘utf-8‘).decode(‘utf-8-sig‘)10 print(file_list2)11 12 13 #列印結果如下14 [‘\ufeff新華社北京2月8日電2月8日‘]15 新華社北京2月8日電2月8日

不懂的還很多,慢慢積累。

python 字串轉列表出現\ufeff的解決方案

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.