Enige dagen terug was ik bezig met een Python-project en ik moest gebruik maken van lijsten. Ik maakte een lege lijst en noemde diecost_array
. Een vriend zag dit en stelde de vraag:
“Wat is het verschil tussen een List en een Array?”
Ik begon na te denken omdat ik tot nu toe gegevens van het type altijd als lists in Python en arrays in Javascript heb beschouwd. Blijkbaar is een Array ook een datatype in Python, wat betekent dat we het
array
type en list
type hebben (het lijsttype is populairder). De meeste mensen krijgen te maken met arrays wanneer ze zich wagen aan Data Science en gebruik maken van bibliotheken zoals numpy
. Arrays zijn het echte werkpaard van datastructuren voor wetenschappelijke en technische toepassingen. Het populairste type array dat in Python wordt gebruikt, is de numpy
array.
- Beiden worden gebruikt voor het opslaan van gegevens
- Beiden zijn muteerbaar
- Beiden kunnen worden geïndexeerd en door iteraties worden doorlopen
- Beiden kunnen worden gesneden
Verschillen
Het belangrijkste verschil tussen deze twee gegevenstypen is de bewerking die u op hen kunt uitvoeren. Arrays zijn speciaal geoptimaliseerd voor rekenkundige bewerkingen, dus als je soortgelijke bewerkingen gaat uitvoeren, moet je overwegen een array te gebruiken in plaats van een lijst.
Ook zijn lijsten containers voor elementen met verschillende gegevenstypen, terwijl arrays worden gebruikt als containers voor elementen van hetzelfde gegevenstype.
Het onderstaande voorbeeld is het resultaat van het delen van een array door een bepaald getal en hetzelfde doen voor een lijst. Wanneer we dezelfde bewerking (voorbeeld: deling) op een lijst proberen, krijgen we een TypeError omdat ingebouwde python lijsten het `__div__` protocol niet ondersteunen. Het kost een extra stap om deze berekening op een lijst uit te voeren, omdat je dan over elk item een voor een zou moeten lussen en opslaan in een andere lijst.
Stress!!