Před několika dny jsem pracoval na projektu v Pythonu a musel jsem využít seznamy. Vytvořil jsem prázdný seznam a pojmenoval hocost_array
. Viděl to kamarád a položil mi otázku:
„Jaký je rozdíl mezi seznamem a polem?“
Začal jsem přemýšlet, protože dosud jsem vždy považoval data typu za seznamy v Pythonu a pole v Javascriptu. Podle všeho je pole datovým typem i v jazyce Python, což znamená, že máme typ
array
a typ list
(typ seznam je populárnější). Většina lidí se k použití polí dostane, když se pustí do datové vědy a využije knihovny jako numpy
. Pole jsou skutečným tahounem datových struktur pro vědecké a technické aplikace. Nejoblíbenějším typem pole používaným v jazyce Python je pole numpy
.
- Oboje slouží k ukládání dat
- Oboje je proměnlivé
- Oboje lze indexovat a iterovat
- Oboje lze krájet
Rozdíl
Hlavním rozdílem mezi těmito dvěma datovými typy je operace, kterou s nimi můžete provádět. Pole jsou speciálně optimalizována pro aritmetické výpočty, takže pokud se chystáte provádět podobné operace, měli byste zvážit použití pole místo seznamu.
Také seznamy jsou kontejnery pro prvky, které mají různé datové typy, ale pole se používají jako kontejnery pro prvky stejného datového typu.
Následující příklad je výsledkem dělení pole určitým číslem a totéž provádí seznam. Když se pokusíme provést stejnou operaci (příklad: dělení) na seznamu, dostaneme TypeError, protože vestavěné seznamy jazyka Python nepodporují protokol `__div__`. Provedení tohoto výpočtu na seznamu vyžaduje krok navíc, protože pak bychom museli postupně procházet jednotlivé položky a ukládat je do jiného seznamu.
Stres!!!
.