2009-03-23 2 views
1

У меня есть список, полный различных битов информации, которые я хотел бы передать нескольким строкам для включения через новую строку format. В качестве примера игрушки, давайте определимВ Python 2.6, как вы можете передать объект списка методу, который ожидает список аргументов?

thelist = ['a', 'b', 'c']

Я хотел бы сделать заявление для печати, как print '{0} {2}'.format(thelist) и print '{1} {2}'.format(thelist)

Когда я запускаю это, я получаю сообщение IndexError: tuple index out of range; когда он обманывает, он явно принимает весь список как единый объект. Я бы, конечно, скорее перевел thelist на 'a', 'b', 'c'.

Я попытался использовать кортеж и получил ту же ошибку.

Что называется эта особая техника? Если бы я знал это имя, я бы искал его. «Развернуть» явно не так. «Взрыв» не приносит ничего полезного.

Мое фактическое использование намного дольше и утомительно, чем пример игрушки.

ответ

10

.format(*thelist)

Это часть синтаксиса вызова в Python. Я тоже не знаю этого имени, и я не уверен, что он есть. См. tutorial.

Он работает не только в списках, но и работает для любого итеративного объекта.

+0

+1: Цитировать документация. –

+0

Я знал, что тебе это понравится. :) –

+0

Я думаю, что это называется «распаковка». – regan

 Смежные вопросы

  • Нет связанных вопросов^_^