繁体   English   中英

for 循环访问多个 excel 工作表

[英]for loop to access multiple excel worksheets

嗨 :) 我目前正在使用 python/pycharm 做一些事情,我需要访问多个 excel 工作表并使用其中存储的数据。 我设法单独访问工作表,但是,有很多重复的代码,为了减少冗余,我尝试使用 for 循环(因为我需要从每个 excel 工作表中找到的所有数据都在同一行中,并且列)。 这是我用来打开每张纸的代码:

data_eu_2016 = 'C:/Users/julia/OneDrive/Documents/python assignment/2016 data -EU values.xlsx'
eu_2016_PM10 = pd.read_excel(data_eu_2016 , sheet_name = 'PM10 ', engine = 'openpyxl', skiprows = 6, usecols = 'A:L')
#print(eu_2016_PM10) -to check that the sheet was accessed
eu_2016_PM25 = pd.read_excel(data_eu_2016 , sheet_name = 'PM2.5', skiprows = 6, usecols = 'A:L')
eu_2016_O3 = pd.read_excel(data_eu_2016 , sheet_name = 'O3 ', skiprows = 6, usecols = 'A:L')
eu_2016_NO2 = pd.read_excel(data_eu_2016 , sheet_name = 'NO2 ', skiprows = 6, usecols = 'A:L')
eu_2016_BaP = pd.read_excel(data_eu_2016 , sheet_name = 'BaP', skiprows = 6, usecols = 'A:L')
eu_2016_SO2 = pd.read_excel(data_eu_2016 , sheet_name = 'SO2 ', skiprows = 6, usecols = 'A:L')

(此代码在其他一些 excel 工作簿中也重复,这就是为什么我真的想删除所有这些代码块的原因)

我的问题是我不确定在这种情况下如何执行 for 循环。 这是我迄今为止尝试过的:

for sheet in data_path_eu_2016:
    pd.read_excel(data_path_eu_2016, sheet_name="PM10 ",'PM2.5' , 'O3 ', 'NO2 ', 'BaP' ,'SO2 ', engine='openpyxl', index_col=None, skiprows=6, usecols = "A:L")

其中我基本上留下了我之前使用过的一整行代码,并插入了所有工作表名称而不是一个,但这不起作用。

任何帮助将不胜感激!!

尝试这样的事情:

wbks = []
for wb in ["PM10 ",'PM2.5' , 'O3 ', 'NO2 ', 'BaP' ,'SO2 ']:
    wbks.append(eu_2016_PM25 = pd.read_excel(data_eu_2016,sheet_name=wb,skiprows=6, usecols='A:L'))

这里也建议了不错的选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM