2. Βιβλιοθήκες της Python#
Η έννοια της βιβλιοθήκης στην Python αναφέρεται σε μια συλλογή επαναχρησιμοποιήσιμων εργαλείων τα οποία έχουν υλοποιηθεί προγραμματιστικά σε μία ή περισσότερες μονάδες κώδικα. Εκτός από τις μονάδες κώδικα της καθιερωμένης Python, μπορούμε να χρησιμοποιήσουμε και μονάδες κώδικα που διατίθενται από τρίτους. Αυτή η διαδικασία απλοποιείται σημαντικά με την χρήση πακέτων τα οποία διατίθενται στο επίσημο ευρετήριο πακέτων pypi της Python. Τα πακέτα του επίσημου ευρετηρίου εγκαθίστανται με τον package installer (pip), ο οποίος επιπρόσθετα φροντίζει για τον έλεγχο και την εγκατάσταση τυχόν προαπαιτούμενων πακέτων.
pip install <package>
Πέρα από τα αρχεία της Python τα πακέτα περιλαμβάνουν πληροφορίες για την εγκατάσταση και συμπληρωματικά αρχεία. Τα συμπληρωματικά αρχεία είναι συχνά δυαδικά εκτελέσιμα που έχουν προκύψει από βιβλιοθήκες σε άλλες γλώσσες προγραμματισμού (C,C++, Fortran). Σε αυτές τις περιπτώσεις η Python λειτουργεί ως διεπαφή και αξιοποιεί την γνώση που έχει συσσωρευθεί τις τελευταίες δεκαετίες σε διεξοδικά επαληθευμένους και βελτιστοποιημένους κώδικες, καθώς και τις υπολογιστικές επιδόσεις που παρέχουν οι μεταγλωττιστές.
Οι έννοιες της μονάδας κώδικα, της βιβλιοθήκης και του πακέτου μπορούν να περιγράψουν τον ίδιο κώδικα από διαφορετική οπτική γωνία και για αυτό χρησιμοποιούνται πολλές φορές εναλλακτικά. Παρακάτω χρησιμοποιείται ο όρος βιβλιοθήκη για τις συλλογές εργαλείων που εγκαθίστανται ως πακέτα χωρίς αυτό να αναιρεί τις υπόλοιπες ιδιότητες.
Οι βιβλιοθήκες που χρησιμοποιούνται συχνά στην αριθμητική ανάλυση είναι οι:
NumPy
SciPy
Matplotlib
pandas
Αν και οι παραπάνω βιβλιοθήκες δεν είναι μέρος της καθιερωμένης Python, είναι κατά κανόνα προεγκατεστημένες σε διαδικτυακά περιβάλλοντα jupyter notebook (Colab, Binder) και είναι διαθέσιμες ως πακέτα σε διανομές Linux. Αξίζει να αναφερθεί ότι πολλές εξειδικευμένες επιστημονικές εφαρμογές του επίσημου ευρετήριο pypi βασίζονται σε αυτές και υπάρχει μεγάλη πιθανότητα να τις έχετε ήδη χρησιμοποιήσει.