代码错误:import pandas as pd # 读取第一个表格并保存表头 df = pd.read_excel('附件一:2022年12月末存量公司客户管户认领情况表__海沧-1.xlsx') header = df.columns.tolist() # 循环读取其余表格并拼接 dfs = [] for file in [ '附件三:2022年12月末存量机构客户管户认领情况表__海沧支行-1.xlsx', '附件二:2023年3月末新拓公司客户管户认领情况表__海沧-1.xlsx', '附件四:2023年3月末新拓机构客户管户认领情况表__海沧支行-1.xlsx' ]: df_temp = pd.read_excel(file, header=None, skiprows=1) df = dfs.append(df_temp) df = pd.concat(dfs) # 输出新表 df.to_excel('new_table.xlsx', index=False, header=header)
时间: 2024-01-30 21:04:31 浏览: 70
pandas读取和保存excel文件
这段代码的问题在于`df = dfs.append(df_temp)`这一行代码,它将`dfs.append(df_temp)`的返回值赋值给了`df`,而`dfs.append(df_temp)`的返回值是`None`,因此`df`的值也变成了`None`。
修改后的代码如下:
```python
import pandas as pd
# 读取第一个表格并保存表头
df = pd.read_excel('附件一:2022年12月末存量公司客户管户认领情况表__海沧-1.xlsx')
header = df.columns.tolist()
# 循环读取其余表格并拼接
dfs = []
for file in [
'附件三:2022年12月末存量机构客户管户认领情况表__海沧支行-1.xlsx',
'附件二:2023年3月末新拓公司客户管户认领情况表__海沧-1.xlsx',
'附件四:2023年3月末新拓机构客户管户认领情况表__海沧支行-1.xlsx'
]:
df_temp = pd.read_excel(file, header=None, skiprows=1)
dfs.append(df_temp)
# 将所有表格拼接起来
df = pd.concat(dfs)
# 输出新表
df.to_excel('new_table.xlsx', index=False, header=header)
```
在循环中,我们首先将读取的表格保存到列表中,最后使用`concat`方法将它们拼接起来。最后输出新表格的代码与之前相同。
阅读全文