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 listValueError 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.
Jak psát:
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
8/12