xlsxwriter条件格式在循环中不起作用

时间:2016-05-12 12:52:57

标签: python-2.7 pandas xlsxwriter

使用xslxwriter worksheet.conditional_format()时,以下工作原理:

i = 1
worksheet.conditional_format(1,i,17,i, {'type':     'cell',
                                    'criteria': 'between',
                                    'minimum':  1,
                                    'maximum':  3,
                                    'format':   format1,
                                    }) 

但是如果你尝试做这样的循环:

for i in np.arange(1,12):                               
    worksheet.conditional_format(1,i,17,i, {'type':     'cell',
                                        'criteria': 'between',
                                        'minimum':  dev1_pos,
                                        'maximum':  dev2_pos-0.01,
                                        'format':   format1_a,
                                        })

它表示你有一个缩进错误

    worksheet.conditional_format(1,i,17,i, {'type':     'cell',
            ^
IndentationError: expected an indented block

这是一个错误还是我做错了?

2 个答案:

答案 0 :(得分:2)

你可以尝试一个行代码,我也去了,

for i in np.arange(1,12):                               
    worksheet.conditional_format(1,i,17,i, {'type': 'cell', 'criteria': 'between', 'minimum':  dev1_pos, 'maximum':  dev2_pos-0.01, 'format':   format1_a})

或者也许有帮助:

for i in np.arange(1,12):                               
    worksheet.conditional_format(1,i,17,i, {'type':     'cell', \
                                        'criteria': 'between', \
                                        'minimum':  dev1_pos,\
                                        'maximum':  dev2_pos-0.01, \
                                        'format':   format1_a
                                        })

编辑:

我认为您可以在Intendation之前检查worksheet.conditional_format...

答案 1 :(得分:0)

错误:

IndentationError: expected an indented block

是Python错误,与XlsxWriter无关。

这是由程序中的某些“缩进”问题引起的。最常见的是混合标签和空格。在编辑器中打开空白高亮显示,并检查缩进是否一致。