2

次のように、UNIXコンソールのリストから一連のノードをカテゴリ別に出力するPythonスクリプトがあります

   
node_name: 1) node_mgt 2) node103 3) node106 4) node107 5) node109 6) node110 7) node115 8) node116 9) node117 10) node120 11) node121 12) node122  
node_sub1: 170) node126 171) node210 172) node304 173) node413 174) node425 175) node517 176) node609

コンソールのサイズに関係なく、ノードが整列する出力をフォーマットするにはどうすればよいですか? そのような

node_name: 1) node_mgt  2) node103  3) node106  4) node107  5) node109  6) node110 
           7) node115  8) node116  9) node117  10) node120  11) node121  12) node122        
node_sub1: 170) node126  171) node210  172) node304  173) node413  174) node425 
           175) node517  176) node609
4

2 に答える 2

4

インデントをぶら下げることは、textwrapモジュールを使用して可能です。

import textwrap

lines=['node_name: 1) node_mgt  2) node103  3) node106  4) node107  5) node109  6) node110  7) node115  8) node116  9) node117  10) node120  11) node121  12) node122  ',
'node_sub1: 170) node126  171) node210  172) node304  173) node413  174) node425  175) node517  176) node609']
for line in lines:
    print(textwrap.fill(line,initial_indent='',subsequent_indent=' '*11,width=84))

収量

node_name: 1) node_mgt  2) node103  3) node106  4) node107  5) node109  6) node110
           7) node115  8) node116  9) node117  10) node120  11) node121  12) node122
node_sub1: 170) node126  171) node210  172) node304  173) node413  174) node425
           175) node517  176) node609
于 2011-11-03T19:31:02.980 に答える
1

pprintはあなたが探しているものです。

より複雑な例:
pretty-print-lists-in-python

于 2011-11-03T19:10:40.970 に答える