I Python 2.6, Hvordan kan du sende en liste objekt til en metode som Forventer en argumentliste?

stemmer
1

Jeg har en liste full av ulike biter av informasjon som jeg ønsker å sende til flere strenger for inkludering via den nye strengen formatmetoden. Som et leketøy eksempel, la oss definere

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

Jeg ønsker å gjøre en utskrift uttalelse som print '{0} {2}'.format(thelist)ogprint '{1} {2}'.format(thelist)

Når jeg kjører denne, får jeg meldingen IndexError: tuple index out of range; når rote rundt, tydelig tar det hele listen som ett enkelt objekt. Jeg ville selvfølgelig heller det oversette thelisttil 'a', 'b', 'c'.

I forsøkt ved hjelp av en tuppel og fikk samme feilen.

Hva på jorden er denne teknikken kalles? Hvis jeg visste navnet, jeg kunne ha søkt om det. Mer er åpenbart ikke det. Eksplodere ikke gir noe nyttig.

Min faktiske bruken er mye lengre og mer kjedelig enn leketøy eksempel.

Publisert på 23/03/2009 klokken 18:39
kilden bruker
På andre språk...                            


2 svar

stemmer
2
'{0} {2}'.format(*thelist)

docs

Svarte 23/03/2009 kl. 18:41
kilden bruker

stemmer
10

.format(*thelist)

Det er en del av kallet syntaks i Python. Jeg vet ikke navnet heller, og jeg er ikke overbevist om at det har en. Se opplæringen .

Det betyr ikke bare fungere på listene, men det fungerer for noen iterable objekt.

Svarte 23/03/2009 kl. 18:43
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more