python 報錯"UnicodeDecodeError: 'utf-8' codec can't decode byte"的解決辦法


最近寫了一個Python讀取csv文件,創建了一個excel文件后直接將其格式改為csv類型,

執行以下代碼:

import csv
birth_data = []
with open("F://regnster.csv",encoding='utf-8') as csvfile:
csv_reader = csv.reader(csvfile) # 使用csv.reader讀取csvfile中的文件
print(csv_reader)
# birth_header = next(csv_reader) # # 越過第一行,因為是標題行,不是數據
for stu in csv_reader: # 將csv 文件中的數據保存到birth_data中
# birth_data.append(row)
print(stu)
報錯:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa4 in position 14: invalid start byte

后來經過不斷查找終於找到了解決辦法。

由於我在程序中設定文件打開的編碼格式為“utf-8”,文件卻不是所以才報錯!

解決辦法很簡單,只需要在另存為的時候,選擇編碼方式為:UTF-8即可,就像下面這樣

再次打開是運行成功

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM