Odebrání podle hodnoty: remove()

Metoda pop() odebírá prvek podle jeho pozice. Často ale víte, co chcete odebrat, a ne kde to je. Na to mají seznamy metodu remove() (anglicky „odstranit“): do závorek napíšete hodnotu a metoda odebere prvek s touto hodnotou:

hoste = ["Anna", "Tomáš", "Lucie", "Marek"]
hoste.remove("Tomáš")
print(hoste)

Program vypíše:

['Anna', 'Lucie', 'Marek']

Když je hodnota v seznamu víckrát, remove() odebere jen první z nich, počítáno od začátku:

cisla = [3, 7, 3, 9]
cisla.remove(3)
print(cisla)

Program vypíše:

[7, 3, 9]

Na rozdíl od pop() metoda remove() odebraný prvek nevrací. Jeho hodnotu přece znáte.

Když hodnota v seznamu vůbec není, program skončí chybou. Texty se porovnávají přesně, takže "tomáš" s malým t není totéž co "Tomáš":

hoste = ["Anna", "Tomáš", "Lucie"]
hoste.remove("tomáš")

Program skončí touto chybou:

Traceback (most recent call last):
  File "<exec>", line 2, in <module>
ValueError: list.remove(x): x not in list

ValueError je chyba hodnoty. x tu označuje hodnotu, kterou jste chtěli odebrat, a hláška říká, že v seznamu není (not in list). V dalším cvičení se naučíte nejdřív zjistit, jestli v seznamu hodnota je.

Pokyny

Předpověď počasí slibuje, že pršet nebude. Odeberte ze seznamu veci_na_cestu pomocí remove() prvek "deštník".

Vypište seznam veci_na_cestu. Ve výpisu by se mělo objevit ['pas', 'opalovací krém', 'sluneční brýle'].

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

8/12