Μια βιβλιοθήκη ή άρθρωμα είναι ένα αρχείο της Python που περιέχει κώδικα (μια σειρά από έτοιμες συναρτήσεις, κλάσεις και μεταβλητές).
- Κάποιες βιβλιοθήκες είναι ενσωματωμένες στην Python ενώ άλλες χρειάζονται μεταφόρτωση (downloading).
- Μερικές από τις πιο κοινές βιβλιοθήκες είναι:
- tkinder - για δημιουργία εφαρμογών & παιχνιδιών (ενσωματωμένη)
- PyGame - για δημιουργία παιχνιδιών
- PIL - για επεξεργασία εικόνων
- turtle - για σχεδίαση γραφικών
- Panda3D - για σχεδίαση 3D γραφικών
ΕΙΣΑΓΩΓΗ ΒΙΒΛΙΟΘΗΚΗΣ
- Με την εντολή import εισάγουμε μια βιβλιοθήκη της Python μέσα στο πρόγραμμα.
- Για να καλέσουμε μια διαθέσιμη συνάρτηση της βιβλιοθήκης χρησιμοποιούμε την τελεία (.).
Παράδειγμα: Εισάγουμε τη βιβλιοθήκη time και καλούμε τη συνάρτηση asctime() που ανήκει στη βιβλιοθήκη αυτή. Η συνάρτηση επιστρέφει την τρέχουσα ημερομηνία και ώρα σαν string.
ΕΝΤΟΛΗ FROM
- Στην Python, αν θέλουμε να εισάγουμε συγκεκριμένα στοιχεία από μια βιβλιοθήκη, χρησιμοποιούμε την εντολή from που έχει την ακόλουθη σύνταξη:
Παράδειγμα: Εισάγουμε τη συνάρτηση asctime() από την βιβλιοθήκη time.
ΒΙΒΛΙΟΘΗΚΗ SYS
- Η βιβλιοθήκη sys περιέχει εργαλεία που διαχειρίζονται την είσοδο δεδομένων και την έξοδο αποτελεσμάτων.
- Η βιβλιοθήκη sys περιέχει συναρτήσεις του συστήματος με τις οποίες μπορούμε να διαχειριζόμαστε τον φλοιό της γλώσσας (Python shell).
ΣΤΟΙΧΕΙΑ ΒΙΒΛΙΟΘΗΚΗΣ SYS
- Τα πιο κοινά στοιχεία της βιβλιοθήκης sys είναι:
- exit() - (συνάρτηση)
- stdin - (αντικείμενο)
- stdout - (αντικείμενο)
- version - (μεταβλητή)
ΣΥΝΑΡΤΗΣΗ EXIT()
- Η συνάρτηση exit() είναι ένας τρόπος να τερματίσουμε τα περιβάλλοντα Python shell και console.
- Με τη συνάρτηση αυτή κάνουμε έξοδο από τα περιβάλλοντα αυτά.
Η συνάρτηση exit() δεν λειτουργεί σε κάποιες εκδόσεις του περιβάλλοντος Python IDLE.
ΑΝΤΙΚΕΙΜΕΝΟ STDIN
- Στη βιβλιοθήκη sys, υπάρχει ένα αντικείμενο (object) με όνομα stdin (συντόμευση standard in).
- Αυτό παρέχει μια χρήσιμη συνάρτηση με όνομα readline(), η οποία διαβάζει μια γραμμή κειμένου που έχει εισαχθεί από το πληκτρολόγιο και την επιστρέφει ως string.
>>> import sys <------- IMPORT MODULE
>>> x = sys.stdin.readline() <------- FUNCTION CALL
Ilias Makris
>>> print('My Name is ', x)
My name is Ilias Makris
Παράδειγμα: Δημιουργούμε μια συνάρτηση ageofstudent που ζητά από το χρήστη να εισάγει μια τιμή που παριστάνει την ηλικία του, και βάσει αυτής (age), εμφανίζει σχετικό μήνυμα στην οθόνη.
READLINE() ή INPUT()
- Μια από τι διαφορές των συναρτήσεων input() και readline() είναι ότι με τη readline(), μπορούμε να προσδιορίσουμε ως παράμετρο τον αριθμό των χαρακτήρων που θα διαβαστούν.
ΑΝΤΙΚΕΙΜΕΝΟ STDOUT
- Το αντικείμενο stdout (συντόμευση standard output) χρησιμοποιείται για την εμφάνιση μηνυμάτων στο shell (ή το console).
- Αν και μοιάζει παρόμοιο με την print, το stdout είναι ένα αντικείμενο αρχείου, και άρα διαθέτει συναρτήσεις σχετικές με τη διαχείριση αρχείων.
Όταν η συνάρτηση write ολοκληρωθεί, επιστρέφει εκτός του μηνύματος και το πλήθος των χαρακτήρων που έχουν εμφανιστεί.
ΜΕΤΑΒΛΗΤΗ VERSION
- Η μεταβλητή version εμφανίζει την έκδοση της Python που έχουμε εγκατεστημένη στον υπολογιστή μας.
- Η μεταβλητή αυτή είναι χρήσιμη όταν θέλουμε να ελέγξουμε αν είμαστε επαρκώς ενημερωμένοι (up-to-date) με την τελευταία έκδοση της γλώσσας.
ΒΙΒΛΙΟΘΗΚΗ KEYWORD
- Κάθε εντολή της Python είναι μία δεσμευμένη λέξη που αποτελεί μέρος του λεξιλογίου της γλώσσας (π.χ. for, if, else).
- Η βιβλιοθήκη keyword περιέχει μεταξύ άλλων, τη συνάρτηση iskeyword() και τη μεταβλητή kwlist.
- Η συνάρτηση iskeyword() επιστρέφει True εάν το string που δέχεται ως παράμετρος ανήκει στο λεξιλόγιο της Python.
- Η μεταβλητή kwlist επιστρέφει μια λίστα με όλες τις δεσμευμένες λέξεις της Python.
ΒΙΒΛΙΟΘΗΚΗ RANDOM
- Η βιβλιοθήκη random περιέχει ένα πλήθος συναρτήσεων που είναι χρήσιμες για την παραγωγή τυχαίων αριθμών.
- Οι πιο κοινές συναρτήσεις της βιβλιοθήκης αυτής είναι:
- randint()
- choice()
- shuffle()
ΣΥΝΑΡΤΗΣΗ RANDINT()
- Η συνάρτηση randint() επιλέγει ένα τυχαίο αριθμό εντός ενός διαστήματος τιμών.
- Χρησιμοποιεί δύο παραμέτρους (έναν ελάχιστο και ένα μέγιστο ακέραιο) για να προσδιορίσει το διάστημα τιμών.
- Ακολούθως, παράγει ένα τυχαίο ακέραιο αριθμό εντός αυτού του διαστήματος.
Παράδειγμα: Χρησιμοποιούμε τη συνάρτηση randint() για να δημιουργήσουμε ένα απλό παιχνίδι «μάντεψε τον αριθμό» με τη βοήθεια ενός βρόχου while.
ΣΥΝΑΡΤΗΣΗ CHOICE()
- Η συνάρτηση choice() χρησιμοποιείται όταν θέλουμε να επιλέξουμε ένα τυχαίο στοιχείο μιας λίστας και όχι έναν τυχαίο αριθμό εντός συγκεκριμένου διαστήματος τιμών.
ΣΥΝΑΡΤΗΣΗ SHUFFLE()
- Η συνάρτηση shuffle() ανακατεύει τα στοιχεία μιας λίστας τιμών.
- Τα αποτελέσματα του ανακατέματος της λίστας είναι ορατά αν εμφανίσουμε εκ νέου τη λίστα.
ΒΙΒΛΙΟΘΗΚΗ TIME
- Η βιβλιοθήκη time περιέχει συναρτήσεις που επεξεργάζονται το χρόνο, και εκτελούν μετατροπές μεταξύ των μονάδων μέτρησης του χρόνου.
- Μερικές από τις πιο συνήθεις συναρτήσεις είναι οι:
- time()
- asctime()
- localtime()
- sleep()
ΣΥΝΑΡΤΗΣΗ TIME()
- Η συνάρτηση time() επιστρέφει το τρέχον χρόνο του συστήματος εκφρασμένο σε ticks (παλμούς) από την 1η Ιανουαρίου 1970 και ώρα 12:00μμ (epoch time, αφετηριακή στιγμή).
Οι παλμοί (ticks) εκφράζουν δευτερόλεπτα υπό μορφή πραγματικών αριθμών. Κάθε κλήση της συνάρτησης επιστρέφει τον αριθμό των δευτερολέπτων που έχουν περάσει από την αφετηριακή στιγμή.
Στο παρακάτω παράδειγμα υπολογίζουμε το χρόνο ολοκλήρωσης ενός βρόχου, καταγράφοντας τη στιγμή έναρξης και τη στιγμή λήξης της εκτέλεσης του, με χρήση της συνάρτησης time().
ΣΥΝΑΡΤΗΣΗ ASCTIME()
- Η συνάρτηση asctime() δέχεται μια ημερομηνία ως πλειάδα και την μετατρέπει σε πιο κατανοητή μορφή.
- Καλώντας τη συνάρτηση αυτή χωρίς παραμέτρους, εμφανίζουμε την τρέχουσα ημερομηνία και ώρα σε αναγνώσιμη μορφή
Οι τιμές εντός της πλειάδας είναι κατά σειρά: έτος, μήνας, ημέρα, ώρα, λεπτά, δευτερόλεπτα, ημέρα της εβδομάδας, ημέρα του χρόνου και μια πληροφορία εάν πρόκειται ή όχι για εργάσιμη αργία (1 ή 0).
ΣΥΝΑΡΤΗΣΗ LOCALTIME()
- Η συνάρτηση localtime() επιστρέφει την τρέχουσα ημερομηνία και ώρα σαν αντικείμενο, με τις τιμές να βρίσκονται στην ίδια σειρά με αυτή της συνάρτησης asctime().
Για να εμφανίσουμε το τρέχον έτος και την τρέχουσα ώρα, χρησιμοποιούμε τις αντίστοιχες μεταβλητές με ονόματα tm_year και tm_hour.
ΣΥΝΑΡΤΗΣΗ SLEEP()