我有一个名为“ workbooks_to_process.xlsx”的文件,其列包含以下excel文件的路径:
**files_paths_2_process** (column header)
c:/work/file01.xlsx
c:/work/file02.xlsx
c:/work/file03.xlsx
………………….
c:/work/file0m.xlsx
另一方面,在Python Pandas中
df_0 = pd.read_excel('workbooks_to_process.xlsx') # No issue
list_of_paths = df_0[files_paths_2_process].tolist() # No issue
itr = list_of_paths[3] # or [0], [1], [n] etc
df_1 = pd.read_excel(itr)
有什么方法可以完成上述任务?
谢谢!
答案 0 :(得分:0)
尝试一下
for itr in range(len(list_of_paths)):
df_1 = pd.read_excel(list_of_paths[itr])
...
...
答案 1 :(得分:0)
用于遍历文件夹中的所有文件以及这些文件中的所有工作表。试试这个:
import pandas as pd
import os
file_list = [os.path.join(r,file) for r,d,f in os.walk("C:\\Users\\ref_folder\\") for file in f]
for file in list(file_list):
f = pd.ExcelFile(file)
sheet_names = f.sheet_names
for i in list(sheet_names):
dataframe = pd.read_excel(f,i)
此数据框将为您提供每张纸的数据框,也适用于具有1张纸的工作簿。
您可以将文件名与excel列文件名匹配,如果匹配,请读取df。我觉得这是您遍历文件夹中的文件并以df读取的最通用的方式。
希望有帮助。