2010-06-01 13 views
27

Zostałem poinstruowany, aby temu zapobiec w programie Python, ale szczerze mówiąc nie mam pojęcia, jak to jest możliwe. Czy ktoś może podać przykład, w jaki sposób możesz wyciąć listę i wstawić do niej coś, aby była większa? DziękiPython: Jak wstawić do listy przez cięcie?

Odpowiedz

53
>>> a = [1,2,3] 
>>> a[:0] = [4] 
>>> a 
[4, 1, 2, 3] 

a[:0] jest „plaster listy a początek przed wszelkimi elementami, a kończąc przed indeks 0”, która jest początkowo pusty plaster (ponieważ nie istnieją żadne elementy w pierwotnej liście przed indeksie 0). Jeśli ustawisz tę opcję jako niepustą listę, rozwinie ona oryginalną listę z tymi elementami. Można również zrobić to samo w innym miejscu na liście, określając zerowej szerokości plaster (lub niezerową szerokość segmentu, jeśli chcesz również zastąpić istniejące elementy):

>>> a[1:1] = [6,7] 
>>> a 
[4, 6, 7, 1, 2, 3] 
+0

Interesujące .. dziękuję za szybką odpowiedź. – Sam

+0

@Sam proszę oznaczyć go jako odpowiedź, jeśli jesteś zadowolony. – systemovich

+0

Niesamowicie prosta i logiczna lista składniowa Pythona nadal mnie zaskakuje! – josh

0

Aby temu zapobiec cię może podklasować wbudowaną listę, a następnie przeładować te metody, aby uzyskać szczegółowe informacje. Dotyczy: here