报错not supported between instances of 'NoneType' and 'NoneType'
时间: 2023-08-02 13:08:04 浏览: 147
Python使用pip安装报错:is not a supported wheel on this platform的解决方法
5星 · 资源好评率100%
这个错误通常出现在Excel文件中某些单元格的值为`None`(空值)时,无法进行比较操作。为了避免这个错误,我们可以在比较之前先检查单元格的值是否为`None`。
以下是修改后的代码示例:
```python
import os
import pandas as pd
from openpyxl import load_workbook
from openpyxl.styles import PatternFill
# 获取当前文件夹路径
folder_path = os.getcwd()
# 遍历当前文件夹下的所有文件
for filename in os.listdir(folder_path):
if filename.endswith(".xlsx") and "淀粉流水线工艺、运行、消耗日报汇总" in filename:
# 加载Excel文件
file_path = os.path.join(folder_path, filename)
workbook = load_workbook(file_path)
# 遍历工作簿中的所有工作表
for sheet_name in workbook.sheetnames:
# 获取当前工作表
sheet = workbook[sheet_name]
# 处理第1个工作表的指定行中的最大值
if sheet_name == workbook.sheetnames[0]:
for row_num in [13, 20, 22, 24, 29, 30, 31, 32, 36, 37, 39, 40, 41]:
# 获取指定行的数据
row_data = sheet.iter_rows(min_row=row_num, max_row=row_num, values_only=True).__next__()
# 找到最大值及其索引
max_value = None
max_index = []
for i, value in enumerate(row_data):
if value is not None: # 检查值是否为None
if max_value is None or value > max_value:
max_value = value
max_index = [i]
elif value == max_value:
max_index.append(i)
# 在单元格中添加粉色背景色标注
for index in max_index:
cell = sheet.cell(row=row_num, column=index+5) # 第e至p列对应的列索引为5至16
cell.fill = PatternFill(start_color="FFFF00", end_color="FFFF00", fill_type="solid")
# 保存修改后的Excel文件
workbook.save(file_path)
```
这个修改后的代码会先检查单元格的值是否为`None`,如果是空值,则不进行比较操作。这样可以避免出现`TypeError: '>' not supported between instances of 'NoneType' and 'NoneType'`错误。
阅读全文