• 技术文章 >常见问题 >Python常见问题

    python 导出csv 中文乱码

     Ly Ly2020-06-12 15:37:37原创3521

    一、前言

    在Linux下面用python进行数据处理,然后输出为csv格式,如果没有中文一切正常,但是如果有中文,就会出现乱码的问题

    二、处理过程

    1

    2

    3

    4

    5

    6

    7

    8

    9

    #!/usr/bin/env python

    # -*- coding: UTF-8 -*-

    import csv

    #import codecs

    with open('test.csv', 'wb') as csvfile:

    #    csvfile.write(codecs.BOM_UTF8)

        spamwriter = csv.writer(csvfile, dialect='excel')

        spamwriter.writerow(['测试'] * 5 + ['Baked Beans'])

        spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])

    运行以后:

    Linux下的效果

    [root@lab8106 ~]# cat test.csv

    测试,测试,测试,测试,测试,Baked Beans

    Spam,Lovely Spam,Wonderful Spam

    Windows下打开的效果

    p1.jpg

    1

    2

    3

    4

    5

    6

    7

    8

    9

    #!/usr/bin/env python

    # -*- coding: UTF-8 -*-

    import csv

    import codecs

    with open('test.csv', 'wb') as csvfile:

        csvfile.write(codecs.BOM_UTF8)

        spamwriter = csv.writer(csvfile, dialect='excel')

        spamwriter.writerow(['测试'] * 5 + ['Baked Beans'])

        spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])

    跟上面的代码相比,引入了两行代码

    1

    2

    import codecs

    csvfile.write(codecs.BOM_UTF8)

    我们再来看效果Linux下的效果

    [root@lab8106 ~]# cat test.csv

    测试,测试,测试,测试,测试,Baked Beans

    Spam,Lovely Spam,Wonderful Spam

    Windows下打开的效果

    p2.jpg

    显示正常

    专题推荐:python
    上一篇:python input输入数据类型错误 下一篇:python 如何键入

    相关文章推荐

    • python iloc用法• python input输入数据类型错误

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网