1
我有一個非英語的行列表,其中每行是一個字符串和整數的列表。我需要將這些數據寫入一個文件並相應地將所有數字轉換爲字符串。 數據內容如下:其中包含u'm\xfcnze'
第一名單上使用Python編解碼器,但仍然得到UnicodeDecodeError
[[u'12', u'as', u'ss', u'ge', u'ge', u'm\xfcnze', u'10.0', u'25.2', u'68.05', 1, 2, 0],
[u'13', u'aas', u'sss', u'tge', u'a', u'mat', u'11.0', u'35.7', u'10.1', 1, 1, 1], ...]
循環中斷。
import codecs
with codecs.open("temp.txt", "w", encoding="utf-8") as f:
for row in data:
f.write(' '.join([str(r) for r in row]))
f.write('\n')
上面的代碼失敗,出現UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 38: ordinal not in range(128)
錯誤。
嘗試r.encode('utf-8') if isinstance(r, str)
沒有解決這個問題,所以我做錯了什麼?
什麼是'data'?我想知道'data'類型和結構能夠幫助你。 –
@ gsi-frank我已經更新了這個問題 – minerals