web-dev-qa-db-ja.com

リストを表形式でpython

複数のリスト(同じ長さ)をテーブルの列として印刷しようとしています。

.txtファイルからデータを読み取っていますが、コードの最後に5つのリストがあり、列を区切ってスペースとして印刷したいと思います。

8
Blaise Delaney

3つのリストのアナログを紹介します。

>>> l1 = ['a', 'b', 'c']
>>> l2 = ['1', '2', '3']
>>> l3 = ['x', 'y', 'z']
>>> for row in Zip(l1, l2, l3):
...     print ' '.join(row)

a 1 x
b 2 y
c 3 z
7
arshajii

あなたは私のパッケージを使うことができます beautifultable 。行または列によるデータの追加、または両方のアプローチの混合をサポートします。行または列を挿入、削除、更新できます。

使用法

>>> from beautifultable import BeautifulTable
>>> table = BeautifulTable()
>>> table.column_headers = ["name", "rank", "gender"]
>>> table.append_row(["Jacob", 1, "boy"])
>>> table.append_row(["Isabella", 1, "girl"])
>>> table.append_row(["Ethan", 2, "boy"])
>>> table.append_row(["Sophia", 2, "girl"])
>>> table.append_row(["Michael", 3, "boy"])
>>> print(table)
+----------+------+--------+
|   name   | rank | gender |
+----------+------+--------+
|  Jacob   |  1   |  boy   |
+----------+------+--------+
| Isabella |  1   |  girl  |
+----------+------+--------+
|  Ethan   |  2   |  boy   |
+----------+------+--------+
|  Sophia  |  2   |  girl  |
+----------+------+--------+
| Michael  |  3   |  boy   |
+----------+------+--------+

楽しんで

6
Priyam Singh

リストのリストがあることを確認します。

_for L in list_of_lists:
    print " ".join(L)
_

str.join(iterable)関数は、指定された文字列によってiterableのコンポーネントを結合します。

したがって、" ".join([1, 2, 3])は「123」になります。

質問を誤解した可能性があり、各listは列であると想定されている場合に備えて:

_for T in Zip(list1, list2, list3, list4, list5):
    print " ".join(T)
_

Zip()は、指定されたリストをタプルの1つのリストにマージします。

_>>> Zip([1,2,3], [4,5,6], [7,8,9])
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
_

乾杯!

1
enpenax
for nested_list in big_container_list
    print '\t'.join(nested_list)

\t集計文字であること

簡単な例:

In [1]: a = [['1','2'],['3','4']]
In [5]: for nested_list in a:
...:     print '\t'.join(nested_list)
...: 
1       2
3       4
0