【发布时间】:2017-08-21 22:03:27
【问题描述】:
我有一些 Unicode 变量。
title
u'\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430'
type(title)
unicode
如果我打印这个变量,我会得到:
print (title)
Администратор интернет-магазин
当我尝试将此数据(西里尔符号)写入 CSV 文件时:
with open('avito.csv','a') as f:
writer=csv.writer(f)
writer.writerow((title))
出现此错误:
UnicodeEncodeError: 'ascii' codec can't encode character u'\u0410' in position 0: ordinal not in range(128)
如何将此变量作为西里尔符号写入 CSV?
【问题讨论】:
-
您再次粘贴了代码而不是错误消息。
-
如果你打算使用 unicode,你真的应该考虑 Python 3。
标签: python python-2.7 csv unicode