分享

Python3将list元素转存为CSV文件

 hdzgx 2020-01-08
首先先定义一个list,将其转存为csv文件,看将会报什么错误:
  1. list=[[1,2,3],[4,5,6],[7,9,9]]
  2. list.to_csv('e:/testcsv.csv',encoding='utf-8')
运行后出现:
Traceback (most recent call last):
  File "D:/Python/untitled/PcCVS.py", line 43, in <module>
    list.to_csv('e:/testcsv.csv',encoding='utf-8')
AttributeError: 'list' object has no attribute 'to_csv'
list没有to_csv的属性,也就是说list直接是转存不了为csv
为了解决这个问题,我们可以引入panas模块,使用其DataFrame属性。
  1. import pandas as pd
  2. list=[[1,2,3],[4,5,6],[7,9,9]]
  3. # 下面这行代码运行报错
  4. # list.to_csv('e:/testcsv.csv',encoding='utf-8')
  5. name=['one','two','three']
  6. test=pd.DataFrame(columns=name,data=list)#数据有三列,列名分别为one,two,three
  7. print(test)
  8. test.to_csv('e:/testcsv.csv',encoding='gbk')

运行结果为:
生成的csv文件为:
默认的行名是从0开始递增的数字,要是不喜欢这个表示,也可以自己改,改成自己喜欢的.只需要在pd.DataFrame()中定义一个index参数,具体如下:
  1. import pandas as pd
  2. list=[[1,2,3],[4,5,6],[7,9,9]]
  3. name=['one','two','three']
  4. name2=['a','b','c']
  5. test=pd.DataFrame(columns=name,index=name2,data=list)
  6. print(test)
  7. test.to_csv('e:/testcsv.csv',encoding='gbk')
这样就就修改好了

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多