4)如何获取每个Sheet表的行列数?—>nrows和ncols属性
import xlrd file = r"G:\Jupyter\test.xlsx" fh = xlrd.open_workbook(file) fh.sheets() fh.sheets()[0].nrows # 结果是:4 fh.sheets()[0].ncols # 结果是:3 fh.sheets()[1].nrows # 结果是:4 fh.sheets()[1].ncols # 结果是:3
5)按行获取,每个Sheet表中的数据—>row_values()
import xlrd file = r"G:\Jupyter\test.xlsx" fh = xlrd.open_workbook(file) sheet1 = fh.sheets()[0] for row in range(fh.sheets()[0].nrows): value = sheet1.row_values(row) print(value)
效果如下:
三、案例讲述
1. 将多个Excel表,合并到一个Excel中(每个Excel中只有一个sheet表)
有四张表,图示中一目了然,就不做过多解释。
实现代码如下:
import pandas as pd import os pwd = "G:\\b" df_list = [] for path,dirs,files in os.walk(pwd): for file in files: file_path = os.path.join(path,file) df = pd.read_excel(file_path) df_list.append(df) result = pd.concat(df_list) print(result) result.to_excel('G:\\b\\result.xlsx',index=False)
结果如下:
2. 将多个Excel表,合并到一个Excel中(每个Excel中不只一个sheet表)
有两个工作簿,如图所示。一个工作簿是pp.xlsx,一个工作簿是qq.xlsx。工作簿pp.xlsx下,有sheet1和sheet2两个工作表。工作簿qq.xlsx下,也有sheet1和sheet2两个工作表。