工具类(Excel)[一]
import xlwt import xlrdclass Ali(object):def __init__(self,p_name):self.workbook = xlwt.Workbook(encoding='utf-8')self.sheet_one = self.workbook.add_sheet('阿里商旅出差审批报表')self.sheet_two = self.workbook.add_sheet('阿里商旅机票订单报表')self.sheet_three = self.workbook.add_sheet('阿里商旅火车票订单报表')self.sheet_four = self.workbook.add_sheet('阿里商旅酒店订单报表')self.sheet_five = self.workbook.add_sheet('阿里商旅用车订单报表')file = xlrd.open_workbook('阿里数据表.xlsx')self.table_one = file.sheets()[0]self.table_two = file.sheets()[1]self.table_three = file.sheets()[2]self.table_four = file.sheets()[3]self.table_five = file.sheets()[4]self.p_name = p_namedef getOne(self):count = 0head_name = ['序号', '审批单号', '出差目的', '交通工具', '审批状态', '审批发起时间', '审批处理时间', '用户id', '申请人', '部门', '部门id', '历史审批人', '审批意见', '审批耗时(分)', '出差行程', '发起人工号', '出差开始日期', '出差结束日期', '同行人', '钉钉审批号', '商旅审批单号']for idx,name in enumerate(head_name):self.sheet_one.write(0,idx,name)nrows = self.table_one.nrowsncols = self.table_one.ncolsfor n in range(nrows):r_data = self.table_one.row_values(n)if self.p_name in r_data[8]:count+=1for nc in range(ncols):self.sheet_one.write(count,nc,r_data[nc])def getTwo(self):count = 0head_name = ['序号', '订单号', '审批单号', '预订日期', '出发城市', '到达城市', '乘机人', '部门', '成本中心', '项目名称', '项目代号', '起飞时间', '到达时间', '提前预订天数', '与最低价差额', '不选低价原因', '低价航班号', '实际乘坐航班号', '结算方式', '财务结算金额', '优惠金额', '机票价格', '基建', '燃油', '是否保险', '保险', '是否退保', '退保金额', '是否退票', '退回金额', '退票手续费', '是否改签', '改签金额', '行程类型', '票号', '支付宝交易流水号', '超标审批单号']for idx, name in enumerate(head_name):self.sheet_two.write(0, idx, name)nrows = self.table_two.nrowsncols = self.table_two.ncolsfor n in range(nrows):r_data = self.table_two.row_values(n)# if self.p_name in r_data[7]:if self.p_name in r_data[7]:count += 1for nc in (ncols):self.sheet_two.write(count, nc, r_data[nc])def getThree(self):count = 0head_name = ['序号', '订单号', '预订日期', '乘车人', '取票号', '联系电话', '发车站', '到达站', '发车日期', '到达日期', '发车时间', '到达时间', '运行时长', '车次', '车次类型', '坐席', '订单总价', '总票价', '优惠金额', '保险', '在线选座手续费', '邮寄费', '是否退票', '退票人', '退款金额', '是否改签', '改签人', '改签费', '支付宝交易流水号', '财务结算价', '审批单号', '支付类型', '企业ID', '企业名称', '部门', '员工钉钉ID', '订单状态', '支付时间', '成本中心', '项目名称', '项目代号']for idx, name in enumerate(head_name):self.sheet_three.write(0, idx, name)nrows = self.table_three.nrowsncols = self.table_three.ncolsfor n in range(nrows):r_data = self.table_three.row_values(n)if self.p_name in r_data[3]:count += 1for nc in range(ncols):self.sheet_three.write(count, nc, r_data[nc])def getFour(self):count = 0head_name = ['序号', '订单号', '预订日期', '入住人', '联系电话', '酒店名称', '入住日期', '离店日期', '房型', '间夜', '交易类型', '支付宝交易流水号', '总价(元)', '总结算金额(元)', '企业结算金额(元)', '个人结算金额(元)', '优惠金额(元)', '其他金额(元)', '是否退订', '退订手续费', '审批单号', '支付类型', '企业ID', '企业名称', '成本中心', '成本中心编号', '项目名称', '项目代号', '员工用户ID']for idx, name in enumerate(head_name):self.sheet_four.write(0, idx, name)nrows = self.table_four.nrowsncols = self.table_four.ncolsfor n in range(nrows):r_data = self.table_four.row_values(n)if self.p_name in r_data[3]:count += 1for nc in range(ncols):self.sheet_four.write(count, nc, r_data[nc])def getFive(self):count = 0head_name = ['序号', '订单号', '供应商订单号', '审批单号', '下单时间', '预订人', '联系人', '联系电话', '部门', '成本中心', '发票抬头', '项目名称', '项目代号', '用车服务类型', '订单类型', '出发时间', '到达时间', '出发城市', '出发地', '到达城市', '到达地', '实际行驶公里数', '结算时间', '费用类型', '结算金额', '退款金额', '预估金额', '用车原因', '用车事由', '员工是否认可', '服务方']for idx, name in enumerate(head_name):self.sheet_five.write(0, idx, name)nrows = self.table_five.nrowsncols = self.table_five.ncolsfor n in range(nrows):r_data = self.table_five.row_values(n)if self.p_name in r_data[5]:count += 1for nc in range(ncols):self.sheet_five.write(count, nc, r_data[nc])def run(self):self.getOne()self.getTwo()self.getThree()self.getFour()self.getFive()self.workbook.save('success.xls')if __name__ == '__main__':c = Ali('张莹莹')c.run()=============================================================================
import pandas as pd from pandas import DataFrame filename = '费用表(二).xlsx'def filterData(fName,colN,value):df = pd.DataFrame(pd.read_excel(fName))df2 = df[(df[colN] == value)]DataFrame(df2).to_excel('cccc.xlsx', sheet_name='Sheet1', index=False, header=True)# df2 = df[(df['状态'] == '等待付款')|(df['状态'] == '已提交')]# print(df['状态'].tolist())# print(df.loc[6000].tolist())# DataFrame(df2).to_excel('d.xlsx', sheet_name='Sheet1', header=True) filterData(filename,'状态','等待付款')# df1= df[['所属公司', '单据编号', '表单名称','事由', '本位币', '状态','申请金额', '核定报销金额', '已付金额']] # df2 = df1[(df1['状态'] == '等待付款')|(df1['状态'] == '已提交')] # df2 = df1.loc[df1['状态'] == '等待付款']
====================================================================
import numpy as np import pandas as pd#创建列表 a = [1,2,3,4,5] #将列表转换为数组 b = np.array(a) b= b.tolist() print(b,type(b))# obj_Ser = pd.Series([1,2,3,4,5,6]) # print(obj_Ser,type(obj_Ser)) # list_a = obj_Ser.tolist() # print(list_a) s4 = pd.Series(np.array([1,1,2,3,5,8])) print(s4)
工具类(Excel)[一]相关推荐
- 工具类--Excel 导出poi
实现功能 --批量导出excel 文件,配置一个sheet多少条数据,根据查询数据量的多少确定生成几个sheet页. pom 文件导入ExcelUtils工具包,依赖于poi包. <!-- ht ...
- SpringBoot+Hutool工具类Excel工具-ExcelUtil实现excel文件的导入导出
Hutool会用的话极大了简化了操作Excel的过程,提高开发效率,废话少说上代码. excel文件导出: public void downLoadFile(UserDto dto,HttpServl ...
- 工具类-Excel导出-使用ApachePOI
本文ApachePOI操作EXCEL 一:ApachePOI POM文件需要引入三个包,都是apache poi的 <dependency><groupId>org.apach ...
- python工具类--Excel读写
import openpyxl from openpyxl.styles import Font''' python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt ...
- java 兼容excel_Java解析Excel工具类(兼容xls和xlsx)
依赖jar org.apache.poi poi-ooxml 4.0.1 ExcelUtils.java package javax.utils; import java.io.File; impor ...
- Excel和Word 简易工具类,JEasyPoi 2.1.5 版本发布
Excel和Word 简易工具类,JEasyPoi 2.1.5 版本发布 摘要: jeasypoi 功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导 ...
- 使用回调方式写POI导入excel工具类
场景是这样的:为了做一个excel导入的功能,为了尽可能的写一个通用的工具类,将与poi有关的东西都封装起来,以便以其他人员只用关心自己的业务,不用和poi打交道. 写到最后,现在还是会有poi的东西 ...
- 一个基于POI的通用excel导入导出工具类的简单实现及使用方法
前言: 最近PM来了一个需求,简单来说就是在录入数据时一条一条插入到系统显得非常麻烦,让我实现一个直接通过excel导入的方法一次性录入所有数据.网上关于excel导入导出的例子很多,但大多相互借鉴. ...
- java使用POI工具类导出excel
POI导出excel 1.导入maven依赖 <dependency><groupId>org.apache.poi</groupId><artifactId ...
最新文章
- ASP.NET图象处理详解
- SDK Instrumentation创建一个Note的实例
- Spring 配置解析之Properties
- 计算机控制系统为什么会受到干扰,浅谈计算机控制系统中的干扰及其抑制措施...
- Objective-C NSSetNSMutableSet以及CountedSet
- 全球链界科技发展大会_科技界女性占五席
- linux mkfifo管道
- 为什么要用maven - 1
- 权限管理su、sudo、限制root远程登录
- 如何让用户留在生态系统里?向苹果学习!【转载】
- 【表盘识别】基于matlab GUI二值化指针式表盘识别【含Matlab源码 275期】
- ScrollView嵌套GridView,自定义Gridview动态设置Item的高度,屏幕适配
- 非线性可视化(2)非线性相图
- TCN机器之心的转载,后面需要实现
- ads滤波器仿真(3)——三阶发夹线带通滤波器及其优化
- python del用法_python中del函数的用法详解
- table固定单元格宽度
- Linux 切换JAVA 版本
- Linux简单的文件管理器设计,桌面应用|如何从 Linux 的文件管理器中加密文件
- JS之数字转为中文数字