распечатать (большой) список с форматом для цикла for - PullRequest
0 голосов
/ 25 мая 2018

У меня есть массив под рукой.Теперь я хотел бы иметь комбинированный вывод текста и записей массива, поэтому я бы использовал .format.

Я бы хотел сейчас, если есть способ получить следующую работу с циклом for (не a [0], a [1], a [2]).

a = [1,2,3]
print("""
A is {}
B is {}
C is {}
""".format(i for i in a))

Этот возвращает IndexError: tuple index out of range

1 Ответ

0 голосов
/ 25 мая 2018

Используйте *, чтобы распаковать аргументы как список аргументов:

a = [1,2,3]
print("""
A is {}
B is {}
C is {}
""".format(*[i for i in a]))

Или даже лучше, если вы не зависите от отдельного содержимого списка;

a = [1,2,3]
print("""
A is {}
B is {}
C is {}
""".format(*a))

Python читает оба эти идентично: *a распаковывается как список аргументов.Вы можете сделать что-то похожее со словарями (используя двойной **, который распаковывает аргументы ключевых слов):

a = {"alpha": 1, "beta": 2, "gamma":3}
print("""
A is {alpha}
B is {beta}
C is {gamma}
""".format(**a))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...