Python Array vs List: Ποιες Είναι οι Διαφορές;

Αν σε ενδιαφέρει ο κλάδος του προγραμματισμού και θες να μάθεις περισσότερα για την Python, τότε σίγουρα θα πρέπει να γνωρίζεις τα επιμέρους χαρακτηριστικά της αλλά και τις διαφορές ανάμεσα τους.

Ένα από αυτά τα χαρακτηριστικά, είναι και οι επιλογές που έχει για αποθήκευση δεδομένων και στοιχείων, οι οποίες είναι γνωστές ως Python List και Python Array.

Για αυτό λοιπόν στο σημερινό άρθρο θα δούμε:

 Τι είναι το Python array;

 Τι είναι το Python list,

 5 βασικές διαφορές Python array vs list και

 Πότε να επιλέξετε Python array ή list.

Ας ξεκινήσουμε, λοιπόν, με τους ορισμούς.

 Τι Είναι το Python Array;

Το Python Array είναι μια δομή δεδομένων η οποία συγκρατεί έναν σταθερό αριθμό στοιχείων και δεδομένων τα οποία πρέπει να είναι του ίδιου τύπου.

Υπάρχουν δύο σημαντικά μέρη του Python Array:

Element (στοιχείο): Κάθε στοιχείο που αποθηκεύεται σε κάθε σημείο του Array (πίνακα)

Index (δείκτης): Η αριθμητική τιμή δηλαδή η θέση που βρίσκεται κάθε στοιχείο μέσα στο Array για να αναγνωρίζεται εύκολα.

Αυτά τα elements επιτρέπουν εύκολες τροποποιήσεις στα δεδομένα καθώς εκχωρούν συνεχόμενες θέσεις μνήμης. 

Μπορεί δηλαδή να γίνεται εύκολη προσθήκη, διαγραφή και πρόσβαση στοιχείων.

Εκτός όμως από το Array υπάρχει και το List.

 Τι Είναι το Python List;

To Python List είναι επίσης μια συλλογή δεδομένων, τα στοιχεία του οποίου, δεν είναι υποχρεωτικά του ίδιου τύπου δεδομένων.

Μπορεί δηλαδή να περιλαμβάνει δεδομένα αριθμητικά ή λογικές τιμές χαρακτήρων και να συνδυάζονται δηλαδή συμβολοσειρές, ακέραιοι αριθμοί και αντικείμενα στην ίδια σειρά.

Ένα Python List είναι μια ταξινομημένη συλλογή που υποστηρίζει αρνητική ευρετηρίαση.

Δημιουργείται χρησιμοποιώντας αγκύλες "[ ]" οι οποίες περιέχουν τιμές δεδομένων. 

Επίσης, τα περιεχόμενα ενός Python List μπορούν εύκολα να συγχωνευθούν και να αντιγραφούν χρησιμοποιώντας τις ενσωματωμένες λειτουργίες του.

Αφού είδαμε τι είναι το Python Array και Python List, πάμε δούμε και μια σύγκριση μεταξύ τους.

 5 Βασικές Διαφορές Python Array vs List

Όπως είδαμε και παραπάνω η Python Array και η Python List, αν και έχουν κοινά δεν ισχύει το ίδιο για όλα τα χαρακτηριστικά τους.

Αν λοιπόν σε ενδιαφέρει να μάθεις περισσότερα για την Python και συγκεκριμένα για τις διαφορές μεταξύ Array και List, τότε συνέχισε την ανάγνωση.

   Διαφορά #1: Τύπος δεδομένων

Μια βασική διαφορά ανάμεσα σε αυτά τα δύο είδη, είναι ο τύπος δεδομένων που δέχονται.

Το Python Array δέχεται ομοιογενή δεδομένα, δηλαδή δεδομένα ίδιου τύπου, σε αντίθεση με  το Python List το οποίο περιλαμβάνει ανομοιογενή δεδομένα, τα οποία διαφέρουν μεταξύ τους. 

   Διαφορά #2: Εσωτερική ενσωμάτωση

Η Python έχει το List  ως ενσωματωμένη δομή δεδομένων. Αυτός είναι ο λόγος, που το List δεν χρειάζεται declaration (δήλωση) στην Python.

Από την άλλη, το Python Array χρειάζεται να δηλωθεί, καθώς χρειάζεται την ενσωμάτωση λειτουργικής μονάδας.

   Διαφορά #3: Αριθμητικές λειτουργίες

Το Python Array έχει την δυνατότητα να κάνει αριθμητικές πράξεις. 

Πράξεις όπως είναι οι διαίρεση κάθε στοιχείου με τον ίδιο αριθμό χρησιμοποιώντας μόνο μια γραμμή κώδικα, είναι εφικτό να γίνουν.

Πιο συγκεκριμένα, η λειτουργική μονάδα NumPy μας επιτρέπει την εύκολη αποθήκευση και χρήση των τιμών των δεδομένων παρέχοντας τη δομή του Array.

Το Python List από την άλλη, αν και μπορεί να εκτελέσει αριθμητικές λειτουργίες, όμως δεν είναι τόσο λειτουργικές όσο του Array.

Αυτό συμβαίνει καθώς, το Python List δεν μπορεί να χειριστεί απευθείας τις πράξεις και βγάζει αρκετά σφάλματα. 

   Διαφορά #4: Μέγεθος

Όσον αφορά το μέγεθος και σε αυτή την περίπτωση εμφανίζεται μια ακόμη διαφορά.

Το Python List προσαρμόζει την χωρητικότητα του ανάλογα με τα στοιχεία διαφορετικού τύπου και μεγέθους που του εκχωρούνται κάθε φορά.

Την ίδια στιγμή όμως το Python Array, παραμένει στο ίδιο μέγεθος που από την αρχή έχει καθοριστεί.

Αυτό σημαίνει πως το Array πρέπει να αποτελείται από στοιχεία του ίδιου μεγέθους.

   Διαφορά #5: Κατανάλωση μνήμης

Μια τελευταία διαφορά μεταξύ του List και Array αφορά την κατανάλωση μνήμης.

Μιας και το Python List προσαρμόζει το μέγεθος του, τότε είναι πολύ λογικό να καταναλώνει και περισσότερη μνήμη, γεγονός που βοηθάει στην όλο και μεγαλύτερη προσθήκη στοιχείων.

Όσον αφορά λοιπόν την μνήμη, το Python Array καταναλώνει την προκαθορισμένη χωρίς να την προσαρμόζει, αφού δέχεται και συγκεκριμένο αριθμό στοιχείων.

Έτσι λοιπόν κάνοντας μαθήματα πάνω στην Python, θα μάθεις περισσότερα για τις παραπάνω διαφορές και όχι μόνο.

 Πότε να Επιλέξετε Python Array ή List

Είδαμε λοιπόν τις πέντε βασικές διαφορές μεταξύ Python Array και Python List και σε τι μπορεί να εξυπηρετήσει καλύτερα τον καθένα.

Τόσο το List όσο και το Array έχουν τα θετικά και τα αρνητικά τους, γεγονός που μπορεί να μην κάνει τόσο εύκολη την επιλογή τους.

Παρόλα αυτά όμως κάθε προγραμματιστής μπορεί να εξυπηρετηθεί από αυτά και να αναπτύξει διάφορα projects με την συμβολή τους.

Με την Python ο καθένας μπορεί να κάνει πολλά πράγματα και να διαλέξει αυτό που του ταιριάζει καλύτερα.

Ως γνωστόν, η Python ανήκει στην λίστα με τις καλύτερες γλώσσες προγραμματισμού για την οποία έχουν δημιουργηθεί και πολλά μαθήματα.

Αν λοιπόν θέλεις να εξελίξεις τις γνώσεις και την καριέρα σου τότε μάθε για το Python για Data Science!

Big Blue Data Academy