python读excel 包含格式_Python xlwings 读取Excel文件的正确姿势

使用Python加载最新的Excel读取类库xlwings可以说是Excel数据处理的利器,但使用起来还是有一些注意事项,否则高大上的Python会跑的比老旧的VBA还要慢。

这里我们对比一下,用几种不同的方法,从一个Excel表格中读取一万行数据,然后计算结果,看看他们的耗时。

1. 处理要求:

一个Excel表格中包含了3万条记录,其中B,C两个列记录了某些计算值,读取前一万行记录,将这两个列的差值进行计算,然后汇总得出差的和。

文件是这个样子:Book300s.xlsx 。

1099428-20190325211123450-1629283587.png

2. 处理方式有以下3种,我们对比一下耗时的大小。

处理方式

代码名称

1. 使用Python的xlwings类库,读取Excel文件,然后采用Excel的Sheet和Range的引用方式读取并计算

XLS_READ_SHEET.py

2. 直接使用Excel自带的VBA语言进行计算

VBA

3. 使用Python的xlwings类库,读取Excel文件,然后采用Python的自带数据类型List列表进行数据存储和计算

XLS_READ_LIST.py

3. 首先测试第一种,XLS_READ_SHEET.py

使用Python的xlwings类库,读取Excel文件,然后引用Excel的Sheet和Range的方式来读取并计算

1 #coding=utf-8

2 importxlwings as xw3 importpandas as pd4 importtime5

6 start_row = 2 #处理Excel文件开始行

7 end_row = 10002 #处理Excel结束行

8

9 #记录打开表单开始时间

10 start_open_time =time.time()11

12 #指定不显示地打开Excel,读取Excel文件

13 app = xw.App(visible=False, add_book=False)14 wb = app.books.open('D:/PYTHON/TEST_CODE/Book300s.xlsx') #打开Excel文件

15 sheet = wb.sheets[0] #选择第0个表单

16

17 #记录打开Excel表单结束时间

18 end_open_time =time.time()19

20 #记录开始循环计算时间

21 start_run =time.time()22

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值