凯发真人娱乐

python openpyxl如何筛选列 -凯发真人娱乐

2024-01-19

本篇内容主要讲解“python openpyxl如何筛选列”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python openpyxl如何筛选列”吧!

python是什么意思

python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最初的设计是用于编写自动化脚本,随着版本的不断更新和新功能的添加,常用于用于开发独立的项目和大型项目。

由于要复制excel 的某些单元格格式,需要对合并的单元格选出符合条件的

如下例是小于15的保留

然后在新表单中

wbsheet_new.merge_cells(cell2)

wbsheet_new为新表单,cell2为筛选后保留的单元格,表达为i24:j24,k24:l24这样的格式

先正则筛选,筛选的结果为[(‘ao', ‘ap')]这种list包含元组的表达方式,再用result[0][0]提取出第一个元素,

如果大于15列

column_index_from_string(result[0][0])>=15

则去掉,其余保留

from openpyxl.utils import get_column_letter, column_index_from_string
import re
s=['ak23:al23',
'am23:an23',
'ao23:ap23',
'aq23:ar23',
'b24:c24',
'd24:f24',
'g24:h24',
'i24:j24',
'k24:l24',
'm24:n24',
'q24:r24',
's24:u24',
'v24:w24',
'x24:y24',
'z24:aa24',
'ab24:ac24',
'af24:ag24',
'ah24:aj24',
'ak24:al24',
'am24:an24',
'ao24:ap24',]
for si in s:
 result=re._compile(r'(\w ?)\d :(\w ?)\d ',flags=0).findall(si)
 print (result)
 if column_index_from_string(result[0][0])>=15:
 print('去掉%s'%result[0][0])

补充:python openpyxl 获取合并的单元格列表,筛选解除单元格合并

代码如下:

#获取该表所有合并单元格信息并遍历
    for i in ws.merged_cell_ranges:
      #获取合并单元格的开始行、列,结束行、列
      r1, r2, c1, c2 = i.min_row, i.max_row, i.min_col, i.max_col
      #解除合并
      ws2.unmerge_cells(start_row = r1, end_row = r2, start_column = c1, end_column = c2)

到此,相信大家对“python openpyxl如何筛选列”有了更深的了解,不妨来实际操作一番吧!这里是本站网站,更多相关内容可以进入相关频道进行查询,关注凯发真人娱乐,继续学习!

网站地图