Друк списку у форматі таблиці в python

Я намагаюся надрукувати кілька списків (однакову довжину) як стовпці таблиці.

Я читаю дані з файлу .txt, і в кінці коду я маю 5 списків, які я хотів би роздрукувати, як окремі стовпчики, але пробіли.

5
Для привабливого дисплея gui ви можете використовувати PyQt, QTableWidget.
додано Автор neuronet, джерело
можливий дубльований друк табличних даних у Python
додано Автор Ciro Santilli 包子露宪 六四事件 法轮功, джерело

8 Відповіді

Я покажу вам аналог 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
5
додано
Дуже дякую! Це блискуче!
додано Автор 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
5
додано
Дуже дякую! Це блискуче!
додано Автор Blaise Delaney, джерело

Ви можете використовувати свій пакет красивого сайту . Він підтримує додавання даних за рядками або стовпцями або навіть змішування обох підходів. Ви можете вставити, видалити, оновити будь-яку рядок або стовпець.

Використання

>>> 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   |
+----------+------+--------+

Весело провести час

3
додано

Ви можете використовувати свій пакет красивого сайту . Він підтримує додавання даних за рядками або стовпцями або навіть змішування обох підходів. Ви можете вставити, видалити, оновити будь-яку рядок або стовпець.

Використання

>>> 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   |
+----------+------+--------+

Весело провести час

3
додано

Приймаючи, що у вас є списки списків:

for L in list_of_lists:
    print " ".join(L)

Функція str.join (iterable) об'єднує компоненти ітерабельного за заданим рядком.

Тому "". Join ([1, 2, 3]) стає "1 2 3".

У випадку, якщо я можу неправильно зрозуміти це питання, і кожен list має бути стовпець:

for T in zip(list1, list2, list3, list4, list5):
    print " ".join(T)

zip() merges the given lists to one list of tuples:

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

Ура!

1
додано

Приймаючи, що у вас є списки списків:

for L in list_of_lists:
    print " ".join(L)

Функція str.join (iterable) об'єднує компоненти ітерабельного за заданим рядком.

Тому "". Join ([1, 2, 3]) стає "1 2 3".

У випадку, якщо я можу неправильно зрозуміти це питання, і кожен list має бути стовпець:

for T in zip(list1, list2, list3, list4, list5):
    print " ".join(T)

zip() merges the given lists to one list of tuples:

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

Ура!

1
додано
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
додано
Він хоче, щоб кожен сублісловий список був стовпцем , а не рядком.
додано Автор arshajii, джерело
Не правильно зрозумів це питання, я думаю. Хоча, я все ще не впевнений у тому, що він має на увазі, але, здається, я єдиний, хто це зрозумів:
додано Автор Samuele Mattiuzzo, джерело
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
додано
Він хоче, щоб кожен сублісловий список був стовпцем , а не рядком.
додано Автор arshajii, джерело
Не правильно зрозумів це питання, я думаю. Хоча, я все ще не впевнений у тому, що він має на увазі, але, здається, я єдиний, хто це зрозумів:
додано Автор Samuele Mattiuzzo, джерело
ІТ КПІ - Python
ІТ КПІ - Python
625 учасників

Канал обговорень про всякі штуки зі світу пайтону. Прохання: 0. мати повагу одне до одного; 1. не матюкатися в сторону людей; 2. не захламляти тред повідомленнями по одному слову;