Python 将数据导出到CSV文件时,可能会出现错误';t编码字符'\xe8';
我有一大组数据,我将使用以下代码将它们导出到CSV文件中Python 将数据导出到CSV文件时,可能会出现错误';t编码字符'\xe8';,python,csv,Python,Csv,我有一大组数据,我将使用以下代码将它们导出到CSV文件中 with open ('/Users/mz/Dropbox/dis/Programming/zoloft.csv', 'w', newline = '') as zolo: zolo = csv.writer(zolo, delimiter =',', quotechar='|') rows = zip(all_rating, all_disorders, all_side_e
with open ('/Users/mz/Dropbox/dis/Programming/zoloft.csv',
'w', newline = '') as zolo:
zolo = csv.writer(zolo, delimiter =',', quotechar='|')
rows = zip(all_rating, all_disorders, all_side_effects,
all_comments, all_gender, all_age, all_dosage_duration, all_date)
for row in rows:
zolo.writerow(row)
但有以下错误:
zolo.writerow(row)
UnicodeEncodeError: 'ascii' codec can't encode character '\xe8' in position 179: ordinal not in range(128)
在我编写的代码中有没有办法处理这个错误?谢谢 是,但您的数据集显然包含Unicode字符。因此,您可以做的事情与的答案类似,并将Unicode字符转换为最接近的ASCII等效字符(这样您的文本以后就不会难以辨认)
我会选择这样的方式:
from unidecode import unidecode
with open('file', 'w', newline = '') as zolo:
zolo = csv.writer(zolo, delimiter =',', quotechar='|')
rows = zip(all_rating, all_disorders, all_side_effects,
all_comments, all_gender, all_age,
all_dosage_duration, all_date)
for row in rows:
zolo.writerow(map(unidecode, row))
是,但数据集显然包含Unicode字符。因此,您可以做的事情与的答案类似,并将Unicode字符转换为最接近的ASCII等效字符(这样您的文本以后就不会难以辨认)
我会选择这样的方式:
from unidecode import unidecode
with open('file', 'w', newline = '') as zolo:
zolo = csv.writer(zolo, delimiter =',', quotechar='|')
rows = zip(all_rating, all_disorders, all_side_effects,
all_comments, all_gender, all_age,
all_dosage_duration, all_date)
for row in rows:
zolo.writerow(map(unidecode, row))
看起来某人的名字或评论中有。看起来某人的名字或评论中有。谢谢!仍然存在以下错误:“文件”//Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site packages/unidecode/_init__.py”,第48行,在unidecode\u expect\u ascii bytestring=string.encode('ascii')')AttributeError:“tuple”对象没有“encode”属性,你能帮我吗?谢谢!,我试过了。输出只是一些字母的列(如“o”、“l”、“k”),它似乎删除了所有信息,只保留了一些字母。@Sebastian Lenartowicz,谢谢!非常感谢。仍然存在以下错误:“文件”//Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site packages/unidecode/_init__.py”,第48行,在unidecode\u expect\u ascii bytestring=string.encode('ascii')')AttributeError:“tuple”对象没有“encode”属性,你能帮我吗?谢谢!,我试过了。输出只是一些字母的列(如“o”、“l”、“k”),它似乎删除了所有信息,只保留了一些字母。@Sebastian Lenartowicz,谢谢!