tablib把数据导出为Excel、JSON、CSV等格式的Py库(写入数据并导出exl)

#tablib把数据导出为Excel、JSON、CSV等格式的Py库
#python 3

import tablib


#定义列标题
headers = ('1列', '2列', '3列', '4列', '5列')


#需写入的数据,按照一行一行的输入
#元组数据的个数必须和列数一致
data = [('23','23','34','23','34'),('sadf','23','sdf','23','fsad')]


#写入数据
mylist = tablib.Dataset(*data, headers=headers)


#追加数据
mylist.append(('Henry', 'Ford','xiaodeng','xiaochen','china'))
mylist.append(('a', 'b','c','d','e'))


#新增列,同时列中插入新的数据,
#mylist.append_col((90, 67, 83), header='age')#出现错误,因为已经有4行数据,但是新增的列age只有3个数据
mylist.append_col((90, 67, 83,100), header='age')


#在指定行插入一行数据
mylist.insert(0, ['est', 'liuyi','test','test','test','test5'])
#这个语句的意思在第1行插入一行数据,数据的个数和列数相等,注意标题行不算在内,从有数据的行开始算行数


#在指定列插入一列数据,数据的个数和当前已有数据的行数相同
#mylist.insert_col(0, ('male', 'female','1','0','1'), header='sex')


#修改excel薄的表的名字
mylist.title='sheet1'


#写入EXL文件
with open('test.xls', 'wb') as f:#exl是二进制数据
    f.write(mylist.xls)


#创建excel薄并写入sheet1表中
myDataBook = tablib.Databook(("sheet1","sheet2"))
#查看excel薄的表名,sheet1,sheet2等等
print(myDataBook.sheets())


#读取excel表中的所有数据
#print(mylist)
"""
1列   |2列  |3列      |4列      |5列   |age
-----|----|--------|--------|-----|---
23   |23  |34      |23      |34   |90
sadf |23  |sdf     |23      |fsad |67
Henry|Ford|xiaodeng|xiaochen|china|83
a    |b   |c   获取第一列数据    |d       |e    |100
"""


#
#print(mylist['1列'])#['23', 'sadf', 'Henry', 'a']


#删除第一行数据
#mylist.lpop()
#删除第[0,2)行数据
#del mylist[0:2]



print(mylist)
原文地址:https://www.cnblogs.com/dengyg200891/p/5350688.html