韭菜花音乐|一分钟用Python搞定,从数百个Excel中查找数据( 二 )


flag=0forcellinnames:ifcell.value=https://pcff.toutiao.jxnews.com.cn/p/20200818/=keyword:#这里的keyword就是档案名 , 可以以档案x003为例flag=cell.rowbreak
获得到符合条件的行号后用sheet[flag]就可以拿到符合行了 。 openpyxl不支持旧表的一整行写入新表 , 因此应对策略就是将这一行的所有单元格具体值组装成一个列表 , 用sheet.append(列表)的方法写入新表 , 遍历部分的完整代码如下:
foriinworkbook.sheetnames:sheet=workbook[i]names=sheet['A']flag=0forcellinnames:ifcell.value=https://pcff.toutiao.jxnews.com.cn/p/20200818/=keyword:flag=cell.rowbreakifflag:#如果flag没有被修改则不需要顺序进行下列代码data_lst=[]forcellinsheet[flag]:#这里加上一个对内容的判断 , 是让无内容的行直接放空 , 而不是写入一个noneifcell.value:data_lst.append(str(cell.value))else:data_lst.append('')new_sheet.append(data_lst)
最后记得保存
new_workbook.save(r'C:UserschenxDesktop台账查询.xlsx')
小结
这是经过一定改编的真实案例 , 可见Python自动化办公确实能够帮助我们解放自己的双手 , 不过在写自动化脚本之前也要先拆分任务 , 明确思路再进行 , 如果对本文的代码和数据感兴趣可以在后台回复自动化获取 。 最后还是希望大家能够理解Python办公自动化的一个核心就是批量操作-解放双手 , 让复杂的工作自动化 。
推荐阅读
算法实现太难了?机器学习也需要开源软件
TikTok算法背后是抖音用户数据?想多了
维度爆炸?Python实现数据压缩如此简单
马小峰:金融科技界的区块链博士
Java二十五载 , 正在Kotlin化