python写入excel多个sheet
时间: 2023-09-07 08:18:00 浏览: 152
可以使用Python中的pandas库来写入excel多个sheet。首先,需要将多个数据保存到一个字典中,每个键值对代表一个数据表。然后,使用pandas的ExcelWriter类创建一个Excel文件写入对象,并将字典中的每个数据表写入不同的sheet中。下面是一个示例代码:
```python
import pandas as pd
# 定义多个DataFrame数据表
df1 = pd.DataFrame({'col1': [1, 2], 'col2': ['A', 'B']})
df2 = pd.DataFrame({'col1': [3, 4], 'col2': ['C', 'D']})
# 将多个DataFrame保存到一个字典中
data = {'Sheet1': df1, 'Sheet2': df2}
# 创建Excel文件写入对象
writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter')
# 写入多个sheet
for sheet_name, df in data.items():
df.to_excel(writer, sheet_name=sheet_name, index=False)
# 保存Excel文件
writer.save()
```
这将创建一个名为test.xlsx的Excel文件,并将df1保存在名为Sheet1的sheet中,将df2保存在名为Sheet2的sheet中。
相关问题
python生成excel多个sheet
### 回答1:
可以使用 pandas 库来生成多个 sheet 的 Excel 文件。具体操作可以参考以下代码:
```python
import pandas as pd
# 创建 Excel 文件
writer = pd.ExcelWriter('example.xlsx', engine='xlsxwriter')
# 创建第一个 sheet
df1 = pd.DataFrame({'Data': [1, 2, 3, 4]})
df1.to_excel(writer, sheet_name='Sheet1', index=False)
# 创建第二个 sheet
df2 = pd.DataFrame({'Data': [5, 6, 7, 8]})
df2.to_excel(writer, sheet_name='Sheet2', index=False)
# 保存 Excel 文件
writer.save()
```
这样就可以生成一个名为 example.xlsx 的 Excel 文件,其中包含两个 sheet,分别为 Sheet1 和 Sheet2。
### 回答2:
Python可以使用xlwt和openpyxl等库来生成Excel文件,并创建多个sheet。下面是使用openpyxl生成多个sheet的示例代码:
```python
import openpyxl
# 创建一个新的Excel文件
wb = openpyxl.Workbook()
# 创建第一个sheet,并命名为Sheet1
sheet1 = wb.active
sheet1.title = "Sheet1"
# 在第一个sheet中写入数据
sheet1["A1"] = "Hello"
sheet1["B1"] = "World"
# 创建第二个sheet,并命名为Sheet2
sheet2 = wb.create_sheet("Sheet2")
# 在第二个sheet中写入数据
sheet2["A1"] = "Python"
sheet2["B1"] = "Excel"
# 保存Excel文件
wb.save("output.xlsx")
```
以上代码中,首先通过`openpyxl.Workbook()`创建了一个新的Excel文件对象,然后通过`wb.active`获取到默认的第一个sheet,并将其命名为"Sheet1",再通过索引操作将数据写入该sheet中。
接着使用`wb.create_sheet("Sheet2")`创建了第二个sheet,并将其命名为"Sheet2",再通过索引操作将数据写入该sheet中。
最后使用`wb.save("output.xlsx")`保存Excel文件,将文件名设置为"output.xlsx",即可生成一个包含多个sheet的Excel文件。
### 回答3:
在Python中,可以使用库Openpyxl来生成包含多个sheet的Excel文件。下面是一个简单的示例代码:
```python
import openpyxl
# 创建一个新的Excel文件
workbook = openpyxl.Workbook()
# 创建第一个sheet
sheet1 = workbook.active
sheet1.title = "Sheet1"
sheet1["A1"] = "这是Sheet1的内容"
# 创建第二个sheet
sheet2 = workbook.create_sheet(title="Sheet2")
sheet2["A1"] = "这是Sheet2的内容"
# 保存Excel文件
workbook.save("多个sheet的Excel文件.xlsx")
```
上述代码中,`openpyxl.Workbook()`用于创建一个新的Excel文件对象,`workbook.active`表示当前活动的sheet,可以直接对其进行操作。也可以使用`workbook.create_sheet()`来创建新的sheet,并指定其标题。使用`sheet["A1"]`可以为指定单元格赋值。
最后使用`workbook.save()`保存Excel文件。
使用 Pandas 写入 Excel 多个 sheet
好的,这是一个技术问题,可以回答。使用 Pandas 写入 Excel 多个 sheet 需要使用 ExcelWriter 对象,在写入数据时指定 sheet 名字即可。以下是代码示例:
```python
import pandas as pd
# 创建 ExcelWriter 对象
writer = pd.ExcelWriter('output.xlsx')
# 写入第一个 sheet
df1 = pd.DataFrame({'col1': [1, 2], 'col2': [3, 4]})
df1.to_excel(writer, sheet_name='Sheet1', index=False)
# 写入第二个 sheet
df2 = pd.DataFrame({'col1': [5, 6], 'col2': [7, 8]})
df2.to_excel(writer, sheet_name='Sheet2', index=False)
# 关闭 ExcelWriter 对象
writer.save()
```