使用Python编写文本包装的Excel文件

时间:2018-08-01 10:33:13

标签: python excel python-3.x textwrapping pandas.excelwriter

我是Python的新手,我正在通过处理一些CSV文件并从中制作一个excel文件进​​行练习。到目前为止,我可以获取excel文件,但是我无法通过python包装单元格。我尝试了多种方法,但没有一种有效。也许是因为我对Python的了解不足。谁能建议我在编写excel文件时如何换行?并请解释代码吗?我为以下代码得到的错误是: 'str'对象没有属性'alignment'

这是我到目前为止所做的:

df=pd.DataFrame(list(zip(Dticketnumberlist,Dcategorylist)), 
             columns=['Ticket', 'Category'])

writer = pd.ExcelWriter('Trial Version.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
workbook=writer.book
worksheet = writer.sheets['Sheet1']

wrap_alignment = Alignment(wrap_text=True)
cell.alignment = wrap_alignment

2 个答案:

答案 0 :(得分:2)

您可以在xlsxwriter引擎(默认设置)中使用熊猫。

您需要通过调用xlsxwriter文档(link here)中概述的workbook.add_format()方法来创建格式对象。

使用pandas.DataFrame.to_excel()后,可以使用worksheet.set_column()添加格式。可以在xlsxwriter文档(link here)中找到一个示例。

我在下面提供了一个完全可复制的示例,并提供了预期的输出。

import pandas as pd

df = pd.DataFrame({'Ticket': ['a','b','c','d'],
                  'Category': [2,1,4,3]})


writer = pd.ExcelWriter('Trial Version.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1', index=False)
workbook=writer.book
worksheet = writer.sheets['Sheet1']

format = workbook.add_format({'text_wrap': True})

# Setting the format but not setting the column width.
worksheet.set_column('A:B', None, format)

writer.save()

预期输出:

Expected Output

答案 1 :(得分:0)

  

使用python xlsxwriter

以前的问题answered可以帮助您更好。