我需要用python读多个SQL文件,并返回df类型数据,本来是可以一个一个读:
df3011 = pd.read_sql( readSqlFile("data/3011_XXX.sql", date1) , con=conn )
df3012 = pd.read_sql( readSqlFile("data/3012_XXX.sql", date1) , con=conn )
...
但是文件较多,想减少一点代码量,我想用for循环定义多个变量并赋值。百度发现python有一个exec函数可以实现定义多个变量并赋值:
for i in range(10):
exec("df%s = %s"%(i,i))
经过一番尝试,竟然发现exec()传递参数有限,exec()仅支持string和code object参数,尽管可以把传递的df转成其他格式成功赋值,但是后面我用的时候还是得转回来,还不如直接读取呢?♀️如果有其他方法的小伙伴欢迎分享~