我有一个包含多个工作表的Excel文件,我想使用循环将每个工作表保存到单独的数据框中。

countries = ['Thailand', 'China']
for country in countries:
    (country + '_data') = pd.read_excel(path, sheet_name = country)


但是我收到一条错误消息:
语法错误:无法分配给运算符

我知道分配不正确,但是如何建立一个正确的循环,该循环将为每个工作表生成单独的数据框?

最佳答案

更好的方法是


使用内置的pd.ExcelFile方法
使用字典将工作表保存在单独的数据框中。


例如:

xl = pd.ExcelFile(file)
print(xl.sheet_names)
['China','Japan','Pakistan'...]


然后可以将它们分配给字典

d = {} # your dict.
for sheet in xl.sheet_names:
    d[f'{sheet}']= pd.read_excel(xl,sheet_name=sheet)


然后您可以致电您的个人dfs

d['China']

08-27 20:31
查看更多