Python短划线数据表style_cell_conditional-多个条件



我想在style_cell_conditional中设置两个条件。下面的代码不起作用。

错误:SyntaxError:表达式不能包含赋值,也许您的意思是"=="?

dash_table.DataTable(
id='table1',
columns=[{"name": i, "id": i} for i in df_table13.columns],
style_cell_conditional=[
{
'if': {'column_id': i},
'backgroundColor': '#B10DC9',
'color': 'white'
}for i in df_table13.columns if i!='index',
{'if': {'column_id': 'index'},
'width': '200px'
}
]
data=df_table13.to_dict('records')
)

如果我只把一个条件放在for循环中,那么它就起作用了:

dash_table.DataTable(
id='table1',
columns=[{"name": i, "id": i} for i in df_table13.columns],
style_cell_conditional=[
{
'if': {'column_id': i},
'backgroundColor': '#B10DC9',
'color': 'white'
}for i in df_table13.columns if i!='index'
]
data=df_table13.to_dict('records')
)

当我设置两个条件时也有效,但没有for循环:

dash_table.DataTable(
id='table1',
columns=[{"name": i, "id": i} for i in df_table13.columns],
style_cell_conditional=[
                     
{'if': {'column_id': 'index'},
'width': '200px'
},
{'if': {'column_id': 'column2'},
'color': 'white'
}
]
data=df_table13.to_dict('records')
)

如何组合条件,如:

{'if': {'column_id': 'column2'},
'color': 'white'
}

条件类似:

{
'if': {'column_id': i},
'backgroundColor': '#B10DC9',
'color': 'white'
}for i in df_table13.columns if i!='index'

或者如何使用下面的不等式表达式?这会解决我的问题。

{'if': {'column_id': 'index'},

您所需要做的就是连接两个数组:

[
{
'if': {'column_id': 'column2'},
'color': 'white'
}
] + [
{
'if': {'column_id': i},
'backgroundColor': '#B10DC9',
'color': 'white'
}for i in df_table13.columns if i!='index'
]

最新更新