python 输出excel 不覆盖
时间: 2023-11-05 13:51:41 浏览: 153
要实现Python输出Excel文件而不覆盖原有数据,可以使用`pandas`库和`openpyxl`库来实现。首先,您需要读取原始Excel文件并将其保存为`DataFrame`对象。然后,您可以将要写入的新数据添加到该`DataFrame`对象中。最后,将更新后的`DataFrame`保存回Excel文件,而不覆盖原有数据。
下面是一个示例代码,演示了如何使用`pandas`和`openpyxl`实现这一目标:
```python
import pandas as pd
from openpyxl import load_workbook
# 读取原始Excel文件
df = pd.read_excel('原始文件.xlsx')
# 添加新数据
new_data = pd.DataFrame({'列名1': ['数据1'], '列名2': ['数据2']})
df = df.append(new_data, ignore_index=True)
# 将更新后的DataFrame保存回Excel文件
writer = pd.ExcelWriter('新文件.xlsx', engine='openpyxl')
book = load_workbook('新文件.xlsx')
writer.book = book
writer.sheets = {ws.title: ws for ws in book.worksheets}
df.to_excel(writer, index=False)
writer.save()
writer.close()
```
使用以上代码,您可以将新的数据添加到现有的Excel文件中,而不会覆盖原有数据。请注意,您需要将`列名1`和`列名2`替换为实际的列名,以及将`原始文件.xlsx`和`新文件.xlsx`替换为实际的文件路径。
引用:
https://stackoverflow.com/questions/3373955/python-and-excel-overwriting-an-existing-file-always-prompts-despite-xlsavecon
[2] https://www.wqbook.com/xinshengchan/95807.html
https://stackoverflow.com/questions/47759381/append-data-to-existing-excel-sheet-python
阅读全文
相关推荐


















