20

Python: xlwt モジュールだけで複数行の文字列を Excel セルに書き込む方法はありますか? (openpyxlモジュールの使用を示唆する回答を見ました)

このsheet.write() メソッドは \n エスケープ シーケンスを無視します。では、xlwtだけでも可能ですか?前もって感謝します。

4

3 に答える 3

33

python-excel Google Groupで答えを見つけました。sheet.write()オプションの引数を使用してstyle、セルのワードラップを有効にすると、うまくいきます。最小限の作業例を次に示します。

import xlwt
book = xlwt.Workbook()
sheet = book.add_sheet('Test')

# A1: no style, no wrap, despite newline
sheet.write(0, 0, 'Hello\nWorld')

# B1: with style, there is wrap
style = xlwt.XFStyle()
style.alignment.wrap = 1
sheet.write(0, 1, 'Hello\nWorld', style)
book.save('test.xls')

セル A1HelloWorldでは改行なしで表示されますが、セル B1 ではHello\nWorld(改行ありで) 表示されます。

于 2013-09-16T07:45:28.953 に答える