python删除excel中第一列中重复60次以上的等于0的的数据,使用openpy不用sum函数
时间: 2024-02-22 09:57:50 浏览: 66
好的,以下是使用 openpyxl 库删除 Excel 第一列中值为0且重复60次以上的行的代码,不使用 `sum()` 函数:
```python
import openpyxl
# 打开 Excel 文件
wb = openpyxl.load_workbook('example.xlsx')
# 选择一个工作表
sh = wb['Sheet1']
# 计算每个值为0的单元格出现的次数
count_dict = {}
for row in range(1, sh.max_row + 1):
value = sh.cell(row=row, column=1).value
if value == 0:
count_dict[row] = count_dict.get(row, 0) + 1
# 删除值为0且重复60次以上的行
for row, count in count_dict.items():
if count >= 60:
sh.delete_rows(row, count)
# 保存修改后的 Excel 文件
wb.save('example_modified.xlsx')
```
该代码首先使用一个字典 `count_dict` 来记录每个值为0的单元格出现的次数。具体来说,我们遍历工作表的所有行,对于每一行,如果第一列的值为0,则将该行的行号作为字典的键,将该行出现次数加1,作为字典的值。接下来,我们遍历字典中的每个键值对,如果值大于等于60,则删除从该行开始的连续的60行。最后,我们保存修改后的 Excel 文件。
阅读全文