嘗試使用Python(特別是西班牙文或法文)讀取包含重音字元的CSV 檔案時,由於Python 的其csvreader 內預設支援ASCII。
為了解決此問題,建議修改程式碼片段來讀取 CSV 文件,如下所示:
<code class="python">import csv def unicode_csv_reader(utf8_data, dialect=csv.excel, **kwargs): csv_reader = csv.reader(utf8_data, dialect=dialect, **kwargs) for row in csv_reader: yield [unicode(cell, 'utf-8') for cell in row] filename = 'output.csv' reader = unicode_csv_reader(open(filename)) for field1, field2, field3 in reader: ...</code>
此程式碼假設輸入資料已採用 UTF 格式-8編碼。如果輸入資料採用不同的編碼,則可以應用以下「轉碼」方法:
<code class="python">line.decode('whateverweirdcodec').encode('utf-8')</code>
透過將'whateverweirdcodec' 替換為適當的編碼,可以將輸入資料轉換為UTF-8正在被csvreader讀取。
以上是如何在 Python 中讀取重音字元的 UTF8 CSV 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!