python2 讀寫文件(txt,csv)亂碼解決

中文亂碼一直是程序處理中不可避免的問題,既然繞不過就想辦法解決它!java

通俗邏輯:python

  1. 源文件編碼格式,'ascii,utf-8,gbk';
  2. python讀取格式設置,encoding=‘utf-8’;
  3. 在程序處理中經過encode(‘utf-8’),decode(‘utf-8’),或者u''.join();
  4. 文件輸出(txt,excel,csv等)編碼設置;

固然,咱們還會用到,# -*-coding:utf-8 -*- 在第一,二行進行標識。編輯器

可是咱們仍是會遇到問題,好比說,中文輸出時遇到亂碼(一萬個那啥啊.......)沒辦法,只能找解決辦法。編碼

  • 遇到問題:
    • 讀取txt,通過處理,輸出csv,csv遇到亂碼。
  • 解決辦法:
df.to_csv("data.csv",encoding="utf_8_sig") # 直接利用"utf_8_sig",才能在excel中顯示中文

 

  •  解決思路:見下表
  •  
  • 總結:

     0. 開源的編輯器實在是噁心的要死

  1. 考慮到不少時候咱們須要對數據處理結果進行進一步操做,統一塊兒見,應該將整個過程用utf-8進行規範化
  2. 總的來講:就中文處理來講。
    1. 原始數據txt儘可能使用無bom格式進行存儲。
    2. Excel數據輸出時候,編碼格式用GBK或UTF-8-SIG
相關文章
相關標籤/搜索