• 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)
  • 相关阅读:
    第五周课后作业
    第五周读书笔记
    PB16120853+JL17110067
    第一次个人作业报告
    《编程匠艺》读书笔记----第四周
    软工第一次个人作业博客(一)
    软工第一次个人作业博客(二)
    《程序员修炼之道》读书笔记(二)--第三周
    关于在aspx前台使用后台变量的问题
    sql语句优化SQL Server
  • 原文地址:https://www.cnblogs.com/dengyg200891/p/5350688.html
Copyright © 2020-2023  润新知