带有变量赋值的Python Map或Filter函数



是否有一种方法可以使用map或filter函数将变量列表映射到函数并将变量(变量的名称)分配给每个输出?

mapping_tables = ['Assets_Table','Liabilities_Table','Equity_Table','Income_Table']

我有一个表列表,我正在应用到一个函数,它将转换成一个数据框,然后从mapping_tables列表中分配一个变量到数据框。现在,下面的for循环可以运行。

for table_name in mapping_tables:
globals()[table_name] = load_data_table_to_df(sheet_name, table_name)

有办法优化这个吗?也许使用Map或Filter函数中的一个?或者甚至是一个不同的python库?还是事情就这么简单?

谢谢

如果你真的想使用map():

# Assuming `sheet_name` is defined somewhere...
def table_to_df(table_name):
return table_name, load_data_to_df(sheet_name, table_name)

frames = dict(map(table_to_df, mapping_tables))

当你想在你的一个数据框架上工作时:

frames[table_name]

最新更新