我有一个python字典,其中键作为数据集名称,值作为整个数据帧本身,请参见下面的字典dict
[数据帧字典]
一种手动编写所有代码的方式ID,如下所示:
csv = dict['csv.pkl']
csv_emp = dict['csv_emp.pkl']
csv_emp_yr= dict['csv_emp_yr.pkl']
emp_wf=dict['emp_wf.pkl']
emp_yr_wf=dict['emp_yr_wf.pkl']
但是随着更多的数据集,这将变得非常低效。 任何有关如何通过循环完成此操作的帮助吗?
答案 0 :(得分:0)
尽管我不推荐这种方法,但是您可以尝试以下方法:
import sys
this = sys.modules[__name__] # this is now your current namespace
for key in dict.keys():
setattr(this, key, dict[key])
现在,您可以检查名称与字典键相同的新变量。
globals()存在风险,因为它可以为您提供名称空间当前指向的内容,但是这种情况可能会改变,因此修改globals()的返回值不是一个好主意
列表也可以像(有限的用例)一样使用:
dataframes = []
for key in dict.keys():
dataframes.append(dict[key])
这仍然是您的选择,以上两种方法都有一些局限性。