Python3 寫入csv文件出現中文亂碼

Python3 寫入csv文件出現中文亂碼

今天用Python3寫入csv文件的時候,出現中文亂碼的問題,但是寫入txt文件顯示正常。

問題復現

寫入txt

record_file = open('./database/GitHubDaily_weibo.txt', mode='a', encoding='utf-8')
record_file.write('發佈時間,終端,內容\n')
  • 1
  • 2

顯示正常,編碼爲 UTF-8
在這裏插入圖片描述

寫入csv

record_file = open('./database/GitHubDaily_weibo.csv', mode='a', encoding='utf-8')
record_file.write('發佈時間,終端,內容\n')
  • 1
  • 2

顯示亂碼

在這裏插入圖片描述

解決方案

只需要將encoding='utf-8' 改爲 encoding='utf-8-sig'

寫入txt

record_file = open('./database/GitHubDaily_weibo.txt', mode='a', encoding='utf-8-sig')
record_file.write('發佈時間,終端,內容\n')
  • 1
  • 2

顯示正常,編碼爲 UTF-8-BOM

在這裏插入圖片描述
寫入csv

record_file = open('./database/GitHubDaily_weibo.csv', mode='a', encoding='utf-8-sig')
record_file.write('發佈時間,終端,內容\n')
  • 1
  • 2

顯示正常

在這裏插入圖片描述

成功!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章