Kaip pašalinti elementą iš sąrašo pagal indeksą?

Kaip pašalinti elementą iš sąrašo pagal indeksą "Python" programoje?

Radau list.remove metodą, bet kaip tai padaryti, jei noriu pašalinti paskutinį elementą? Atrodo, kad pagal nutylėjimą remove atlieka paiešką sąraše, bet aš nenoriu, kad būtų atliekama paieška.

Sprendimas

Naudokite del ir nurodykite norimo ištrinti elemento indeksą:

>>> a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> del a[-1]
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8]

Taip pat palaikomos skiltys:

>>> del a[2:4]
>>> a
[0, 1, 4, 5, 6, 7, 8, 9]

Čia pateikiamas skyrius iš vadovėlio.

Komentarai (15)

Tikriausiai norite pop:

a = ['a', 'b', 'c', 'd']
a.pop(1)

# now a is ['a', 'c', 'd']

Pagal numatytuosius nustatymus pop be jokių argumentų pašalina paskutinį elementą:

a = ['a', 'b', 'c', 'd']
a.pop()

# now a is ['a', 'b', 'c']
Komentarai (6)

pop taip pat naudinga norint pašalinti ir išsaugoti elementą iš sąrašo. Kai del iš tikrųjų išmeta elementą.

>>> x = [1, 2, 3, 4]

>>> p = x.pop(1)
>>> p
    2
Komentarai (0)