【发布时间】:2020-08-02 11:12:11
【问题描述】:
我正在尝试使用 xlsxwriter 将值写入 excel 工作表。
当尝试将数据写入第二行时,数据会覆盖到第一行本身。由于我是 xlsx 作家的新手,我无法弄清楚在哪里迭代。
import pandas as pd
from pandas import ExcelWriter
def outputInExcel(valueToExcel):
with ExcelWriter('pandas.xlsx', mode='A', engine='xlsxwriter') as writer:
# write operation perform
valueToExcel.to_excel(writer,startrow=1, header=False)
worksheet = writer.sheets['Sheet1']
workbook = writer.book
header_format = workbook.add_format({
'bold': True,
'text_wrap': True,
'valign': 'top',
'fg_color': '#D7E4BB',
'border': 1})
for row_num,col_num,value in enumerate(valueToExcel.columns.values):
worksheet.write(0, col_num + 1, value, header_format)
writer.save()
file = "Search.xlsx"#image reference
df = pd.read_excel(file)
for index, row in df.iterrows():
valueToExcel = pd.DataFrame({
'Manager': [row['Manager']], 'Policy Name': [row['Policy Name']], 'Numbers': [row['Numbers'], 'Source IP': [row['Source']], 'Destination IP': [row['Destination']]
})
outputInExcel(valueToExcel)
我期待这样的输出。
我得到这样的输出。
【问题讨论】:
-
您可能需要行变量并为每个新行添加 1,就像您对 col_num 所做的那样。
标签: python python-3.x pandas list xlsxwriter