python 用 pandas 保存多个 df 到一个 excel 工作簿
0、创建数据
import random
import numpy as np
import pandas as pd
from string import ascii_uppercase as U_CASES
random.seed(19990702)
name = sorted([''.join(random.sample(U_CASES, k=3)).capitalize() for i in range(13)])
gender = [random.choice(['男', '女']) for i in range(13)]
age = [random.randint(a=15, b=60) for i in range(13)]
data = {'姓名': name,
'性别': gender,
'年龄': age
}
df = pd.DataFrame(data)
df
1、将 df 写入同一 workbook 中的不同 sheet
writer = pd.ExcelWriter('text.xlsx') # ExcelWriter 对象
for i in range(3):
df.to_excel(excel_writer=writer,
sheet_name = f'Sheet{i+1}',
index=False, # 不写入 index 对象
)
excel:
2、将 df 写入同一 sheet 的不同位置
writer = pd.ExcelWriter('text.xlsx') # ExcelWriter 对象
for j, i in enumerate(range(0, 13, 4)):
df.to_excel(excel_writer=writer,
sheet_name = 'Sheet1',
index=False,
startrow=i,
startcol=j*4 # 不写入 index
)
excel:
非学无以广才,非志无以成学。