Python将多行代码转换为单行代码



我想将下面的多行代码转换为一行代码。我已经试过了,但无法取得最终结果。

多行代码:-

for k, v in FLOW_GROUPS.items():
if k == '':
[pd.Series(df_by_fulfillment_flow[v].sum(axis=1), name=k)]
else:
[pd.Series(df_by_fulfillment_flow[v].mean(axis=1), name=k)]

到目前为止,我的成功如下所示,我想添加一个条件:-

[pd.Series(df_by_fulfillment_flow[v].sum(axis=1), name=k) for k, v in FLOW_GROUPS.items()]

带if-else的三元循环语法:

[<ifvalue> if <condition> else <elsevalue> for i in <yourdata>]

仅包含if语句的三元循环语法:

[<value> for i in <yourdata> if <condition>]

虽然我不知道你的输入和想要的输出,但根据语法,你的单行代码应该是这样的:

[[pd.Series(df_by_fulfillment_flow[v].sum(axis=1), name=k)] if k == '' else [pd.Series(df_by_fulfillment_flow[v].mean(axis=1), name=k)] for k, v in FLOW_GROUPS.items()]

最新更新