Python:使用unicodecsv将Unicode输出到csv

时间:2015-09-03 04:53:40

标签: python json csv unicode

我使用unicodecsv模块将一些unicode输出写入csv。一切都按预期工作,但我试图通过添加一些标题或字段名称来构建它。到目前为止,我已经尝试了许多不同的方法,但我无法想出如何添加字段名称。

我已经尝试过其他unicode解决方案,这个模块似乎是最优雅的,所以我尽可能尝试使用它。如果还有其他建议,我会为他们做好准备。有任何想法吗??请参阅下面的相关代码。

import unicodecsv

with open('c:\pull.csv', 'wb+') as f:
            csv_writer = unicodecsv.writer(f, encoding='utf-8')
            for i in changes['user']['login'], changes['title'], str(changes['changed_files']), str(changes['commits']) :
                csv_writer.writerow([changes['user']['login'], changes['title'],changes['changed_files'], changes['commits']])

csv文件中更改的示例输出:

'John Doe', 'Some Title', 1, 1

1 个答案:

答案 0 :(得分:1)

对于您拥有的json数据,只有一个用户条目,因此以下内容应该有效:

with open('c:\pull.csv', 'wb+') as f:
    csv_writer = unicodecsv.writer(f, encoding='utf-8')

    # Write a header row (do once)
    # csv_writer.writerow(["login", "title", "changed_files", "commits"])

    # Write data row
    csv_writer.writerow([changes['user']['login'], changes['title'],changes['changed_files'], changes['commits']])

如果您需要标题行,请取消注释该行。然后,这将为您提供输出文件:

login,title,changed_files,commits
octocat,new-feature,5,3