(编辑:jimmy 日期: 2024/12/31 浏览:2)
首先先定义一个list,将其转存为csv文件,看将会报什么错误
list=[[1,2,3],[4,5,6],[7,9,9]] 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属性。
import pandas as pd list=[[1,2,3],[4,5,6],[7,9,9]] # 下面这行代码运行报错 # list.to_csv('e:/testcsv.csv',encoding='utf-8') name=['one','two','three'] test=pd.DataFrame(columns=name,data=list)#数据有三列,列名分别为one,two,three print(test) test.to_csv('e:/testcsv.csv',encoding='gbk')
运行结果为:
生成的csv文件为:
默认的行名是从0开始递增的数字,要是不喜欢这个表示,也可以自己改,改成自己喜欢的.只需要在pd.DataFrame()中定义一个index参数,具体如下:
import pandas as pd list=[[1,2,3],[4,5,6],[7,9,9]] name=['one','two','three'] name2=['a','b','c'] test=pd.DataFrame(columns=name,index=name2,data=list) print(test) test.to_csv('e:/testcsv.csv',encoding='gbk')
这样就就修改好了