我有大量的jsondata需要转换成excel(大约10000行和20ish列)csv.my文件代码:
x = json.load(urllib2.urlopen('#####'))
f = csv.writer(codecs.open("fsbmigrate3.csv", "wb+", encoding='utf-8'))
y = #my headers
f.writerow(y)
for row in x:
f.writerow(row.values())
unicodeEncodeError:“ascii”编解码器无法对位置0中的字符u“\xd6”进行编码:序号不在范围内(128) 就是发生了什么。你知道吗
我尝试过对json数据进行编码
dict((k.encode('utf-8'), v.encode('utf-8')) for (k,v) in x)
但是有太多的数据需要处理。你知道吗
关于如何完成这件事,有什么想法吗?(抱歉,我的第一篇文章缺乏惯例。)
完整的回溯是;Traceback (most recent call last):
File "C:\Users\bryand\Desktop\bbsports_stuff\gba2.py", line 22, in <module>
f.writerow(row.values())
UnicodeEncodeError: 'ascii' codec can't encode character u'\xd6' in position 0: ordinal not in range(128)
[Finished in 6.2s]
因为您没有指定这里有一个python3解决方案。python2解决方案要痛苦得多。我包含了一些带有非ASCII字符的简短示例数据:
utf-8-sig
编解码器确保在输出文件的开头写入字节顺序标记字符(BOM),否则Excel将采用本地ANSI编码。你知道吗因为您有带有键/值对的
json
数据,所以使用DictWriter
可以指定头;否则,头的顺序是不可预测的。你知道吗相关问题 更多 >
编程相关推荐