txtまたはcsvファイルに書き込みたいデータのブロックがあります。これらのデータブロックは、のサブリストとして含まれています
data=[[('a1','b1'),('c1','d1')],
[('a2','b2'),('c2','d2'),('e2','f2')],
[('a3','b3'),('c3','d3'),('e3','f3')]]
タブで区切られた列のセットにブロックを表示したい。
何か案は?
ありがとう、
ジム
txtまたはcsvファイルに書き込みたいデータのブロックがあります。これらのデータブロックは、のサブリストとして含まれています
data=[[('a1','b1'),('c1','d1')],
[('a2','b2'),('c2','d2'),('e2','f2')],
[('a3','b3'),('c3','d3'),('e3','f3')]]
タブで区切られた列のセットにブロックを表示したい。
何か案は?
ありがとう、
ジム
>>> from itertools import izip_longest
>>> data=[[('a1','b1'),('c1','d1')],[('a2','b2'),('c2','d2'),('e2','f2')],[('a3','b3'),('c3','d3'),('e3','f3')]]
>>> for columns in izip_longest(*data,fillvalue=''):
print '\t'.join(map(' '.join,columns))
a1 b1 a2 b2 a3 b3
c1 d1 c2 d2 c3 d3
e2 f2 e3 f3
これを行う方法の例については、こちらのドキュメントを確認してください。「タブ」は、2スペースでも4スペースでも、アプリケーションに適したものでも、好きなように定義できます。
CSVモジュールは、あなたが求めていることを正確に行う「DictWriter」と呼ばれるクラスを提供します。ここで見ることができます