所以我试图使用Openpyxl为我的excel文件设置条件列着色。这是我的代码:
for cols in ws2.iter_cols(min_col=10, max_col=10, min_row=67, max_row=83):
for cell in cols:
if (cell.value > 0.35):
cell.fill = PatternFill(fgColor="FFC000", patternType = 'solid')
但是我只是得到一个错误:
TypeError:'str'和'float'实例之间不支持'>'
我检查了cell.value
和0.35
的类型-均为float
。我该怎么办?
答案 0 :(得分:1)
尝试一下:
try:
if (float(cell.value) > 0.35):
...
except:
continue
答案 1 :(得分:0)
您可以使用以下内容:
cell_value = cell.value
if isinstance(cell_value, (int, float)) and (cell.value > 0.35):
cell.fill = PatternFill(fgColor="FFC000", patternType = 'solid')
答案 2 :(得分:0)
我认为问题在于,您要迭代的列并非由所有浮点数组成!检查每个元素的类型。