python操作excel的坑

博主分享了使用Python操作Excel的实际经验,从最初的乐观预估到遇到的多个挑战,如处理公式单元格、坐标系统差异及逻辑错误,最终耗时远超预期。

临时为了项目需要,用python做个操作excel的小脚本,原以为4小时以内交货,结果被几个小坑搞了1个通宵+1个白天。主要还是由于很长时间没有弄这个了,很多简单的操作都不会了,要从头慢慢熟悉起来。用了前面的一些组合代码,本以为两个小时搞定功能,再优化一下2个小时,8点开干,12点前能够结束。但是坑出来了。

按时间顺序,主要的几个:

1、goto,因为用了多个多重循环,要跳出很麻烦,开始用goto,但折腾了大半个小时,毫无结果。最后决定不再耗下去了,改用bool变量,快点结束。

2、以前用pyWin32,这次一开始改用xlrd、 xlwt,一开始很顺利,不用2小时,功能搞定,所有数据爬取出来了。但是,跑了两次,发现不对了,有两个金额始终为0,检查一下,发现excel里面是公式。在网上折腾一番,发现就是搞不定。发现pyWin32可以搞定,虽然愚蠢一些,也很不优雅,于是改换门庭。这一下12点前结束是没戏了。

3、自己愚蠢,没有注意到pyWin32和xlrd、 xlwt的差别,cells是的行和列从1开始计数的,结果字啊这里卡了两三个小时,最后都快放弃了,把里面的一个个跟踪了一遍,发现是这个犯傻的问题,终于在凌晨把主体工作完成了。但是时间被耗太多了。

4、连续奋战,脑子已经不好使了。在最后一个复杂逻辑,写了两圈,结果嵌套到外部去了。最后是休息了一下,中午来搞定。睡了一觉,感觉清爽了。下午稍微优化了一下,基本上可用了。但脚本实在写得太难看。

 

一点感慨:

1、写这种不大的脚本,还是要老老实实先把逻辑理顺,把注释写好再操作。能转起来是最重要的。2、生活中充满各种坑,预算放宽永远是必要的。4小时最后放大成快14小时了。 3、不同年纪干不同的事,年纪大了,熬夜写脚本的活还是适合年轻人。

 

Python中,要关闭Excel文件,可以使用openpyxl库或xlrd库来操作。如果你使用的是openpyxl库,可以使用`workbook.close()`方法来关闭Excel文件。如果你使用的是xlrd库,可以使用`workbook.release_resources()`方法来释放Excel文件资源并关闭文件。 确保在关闭Excel文件之前,没有其他程序正在使用它,否则会出现类似“Python正在使用此文件”的错误提示。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [python 关闭其中一个 excel 文档](https://blog.youkuaiyun.com/nongcunqq/article/details/128807482)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Python操作excel工作,可以定位一个excel的一个sheet里面的多个table数据,并写道不同的excel里面](https://download.youkuaiyun.com/download/cao812755156/88246662)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Python打开Excel读取,关闭Excel后提示(xlrd 有须注意)](https://blog.youkuaiyun.com/m0_37390678/article/details/126253502)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值