panda分不同sheet写入数据,利用with
时间: 2023-12-10 14:37:53 浏览: 56
你可以使用 `pandas.ExcelWriter` 来写入多个 sheet 到同一个 Excel 文件中,并使用 `with` 语句来确保文件在处理完后被正确关闭,避免出现文件被占用无法访问的情况。
下面是一个示例代码:
```python
import pandas as pd
# 创建要写入的数据
data1 = {'name': ['Alice', 'Bob', 'Charlie'], 'age': [25, 30, 35]}
data2 = {'name': ['David', 'Eva', 'Frank'], 'age': [40, 45, 50]}
# 创建 ExcelWriter 对象并指定文件名
with pd.ExcelWriter('output.xlsx') as writer:
# 写入第一个 sheet
df1 = pd.DataFrame(data1)
df1.to_excel(writer, sheet_name='Sheet1', index=False)
# 写入第二个 sheet
df2 = pd.DataFrame(data2)
df2.to_excel(writer, sheet_name='Sheet2', index=False)
```
这个示例中,先创建了两个要写入的数据,然后使用 `pd.ExcelWriter` 创建了一个 ExcelWriter 对象,并指定了要写入的文件名 `output.xlsx`。接着,使用 `with` 语句打开 ExcelWriter 对象,然后在其中通过 `to_excel` 方法将两个 DataFrame 分别写入到两个 sheet 中。最后,ExcelWriter 对象会在 `with` 语句块结束时自动关闭,确保文件被正确保存并释放资源。
阅读全文