我正在使用Django應用程序將字符串導出到CSV文件。該字符串是通過前端表單提交的消息。但是,當輸入中提供了一個unicode單引號時,我得到了這個錯誤。Python Unicode CSV導出(使用Django)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2019'
in position 200: ordinal not in range(128)
我一直在嘗試使用下面的代碼將unicode轉換爲ascii,但仍然得到類似的錯誤。
UnicodeEncodeError: 'ascii' codec can't encode characters in
position 0-9: ordinal not in range(128)
我已經通過幾十個網站篩選和學到了很多關於unicode的,但是,我還是沒能這個unicode轉換爲ASCII。我不在乎算法是否刪除了unicode字符。註釋行表示我嘗試過的一些不同的選項,但錯誤仍然存在。
import csv
import unicodedata
...
#message = unicode(unicodedata.normalize(
# 'NFKD',contact.message).encode('ascii','ignore'))
#dmessage = (contact.message).encode('utf-8','ignore')
#dmessage = contact.message.decode("utf-8")
#dmessage = "%s" % dmessage
dmessage = contact.message
csv_writer.writerow([
dmessage,
])
有沒有人有任何建議去除unicode字符,我可以將它們導出到CSV?這個看似簡單的問題讓我頭暈目眩。任何幫助深表感謝。 謝謝, 喬
感謝修復格倫 – 2010-10-14 01:44:53