Python3 集成Tablib 模块解析

访客 阅读:216 2021-03-31 12:53:01 评论:0

Tablib 模块简介:

在Python 程序中,可以使用第三方模块Tablib 将数据导出为各种不同格式,包括Excel、JSON、HTML、Yaml、CSV和TSV 等格式。

Tablib 模块基本用法

import tablib 
 
# tablib 简单示例 
# 第一步:定义头信息 
headers = ("name", "age", "weight") 
# 第二步:定义内容 
data = [("alex", "25", "60kg"), ("xiaoyuanquan", "18", "80kg"), ("peiqi", "18", "60kg")] 
# 第三步:数据组装 
data = tablib.Dataset(*data, headers=headers) 
# 测试:输出组装数据的dict 
print(data.dict) 
# 测试:输出组装数据的json 
print(data.json) 
 
# tablib 动态添加列 
data.append_col(["1", "2", "2"], header='no') 
# 测试:输出新增列数据的dict 
print(data.dict) 
 
 
# tablib 数据导出 json 类型 
with open('D:\output.json', mode='w', encoding='utf8') as outfile: 
    outfile.write(data.json) 
# tablib 数据导出 csv 类型 
with open('D:\output.csv', mode='w', encoding='utf8') as outfile: 
    outfile.write(data.csv) 
 

Tablib 模块进阶之操作数据集中指定的列和行

# tablib 操作数据集指定行和列 
# tablib 输出指定行 
print(data[0]) 
# tablib 显示指定列值 
print(data['name']) 
# 使用索引访问列 
print(data.headers) 
print(data.get_col(1)) 
#  tablib 混合使用,计算平均年龄 
ages = data['age'] 
print(float(sum(ages) / len(ages)))

Tablib 模块进阶之移除数据集中的指定列和行

# tablib 操作数据集移除指定行和列 
# 移除指定行 
del data[1:2] 
print(data.dict) 
# 移除指定列 
del data['no'] 
print(data.dict)

Tablib 模块进阶之标签过滤数据

import tablib 
 
# 使用tablib 标签过滤数据 
students = tablib.Dataset() 
students.headers = ['id', 'name', 'age'] 
# tablib 添加数据指定tags 标签 
students.rpush(['1', 'zcx', 4], tags=['min']) 
students.rpush(['1001', 'wz', 24], tags=['max']) 
# tablib 使用filter 过滤函数,添加符合tag 名称的数据 
print(students.filter(['min']).dict) 

 

声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

发表评论
搜索
排行榜
KIKK导航

KIKK导航

关注我们