从字典创建变量的最佳方法是什么

时间:2019-10-23 09:25:56

标签: python python-3.x pandas

为了能够增加字典而又不改变代码中的其他内容,我想遍历字典键并创建数据框。

我发现的方法是通过使用global()创建全局变量。但是,这是最Python的方式还是最好的方式?我知道全局变量是一个nono,但这似乎是唯一的解决方法。

stocks = {
    'Tencent':'TCEHY',
    'Blizzard' : 'ATVI',
    'EA':'EA',
    'Rockstar':'TTWO'
}

def create_dataframes(stock_dict):
    for stock in stock_dict:
        globals()[stock] = pd.read_csv('{}.csv'.format(stock_dict[stock]))

这将产生带有键名的新变量,这当然是我想要的。我只想知道是否应该以其他方式执行此操作?

谢谢!

1 个答案:

答案 0 :(得分:4)

不要在运行时创建全局变量,只需使用字典即可​​。

dfs = {}
for stock_name, stock_code in stock_dict.items():
    dfs[stock_name] = pd.read_csv(f'{stock_code}.csv')

然后您可以使用其名称访问它们

dfs['EA'].describe()