PYTHON ENOTHTA 2 – Python Strings, String Literals and Comments

 

Δωρεάν μαθήματα Python


ΕΙΣΑΓΩΓΗ

Σε αυτό το δωρεάν μάθημα Python, θα δώσουμε έναν απλό ορισμό για το τι είναι function στην Python, θα μιλήσουμε για το πως μπορούμε να τυπώσουμε διάφορα μηνύματα στο terminal παράθυρο με την χρήση του print( ) function που μας προσφέρει η Python, και το πως μπορούμε να ενσωματώσουμε επεξηγηματικά σχόλια στον κώδικα μας.

ΟΡΙΣΜΟΣ ΚΑΙ ΧΡΗΣΗ ΤΟΥ PRINT( ) FUNCTION

Ας ξεκινήσουμε πρώτα δίνοντας έναν απλό ορισμό για το τι είναι ένα function.  Ένα function είναι μια ομάδα γραμμών κώδικα Python που μαζί εκτελούν μια κοινή λειτουργία. Η Python γενικότερα μας παρέχει μια μεγάλη λίστα από ενσωματωμένα function όπου κάθε ένα από αυτά εκτελεί και μια διαφορετική λειτουργία. Ίσως το πιο γνωστό και διάσημο function είναι εκείνο της τύπωσης (print) ενός αποτελέσματος στην οθόνη.

Όπως ήδη έχουμε δει από το πρώτο δωρεάν μάθημα Python, για να καλέσουμε το print( ) function απλά γράφουμε το όνομα του και αμέσως μετά ανοίγουμε και κλείνουμε ένα σετ από παρενθέσεις. Μέσα στις παρενθέσεις γράφουμε το μήνυμα που θέλουμε να τυπώσουμε στο terminal παράθυρο του υπολογιστή μας. Αυτή η πληροφορία που γράφουμε μέσα στην παρένθεση, και κατά συνέπεια την περνάμε στο function προς εκτέλεση, ονομάζεται argument. Το print( ) function σαν argument δέχεται ένα μήνυμα που η αρχή του και το τέλος του ορίζονται από ένα σετ single quotes ( ‘ ‘ ). Αν για παράδειγμα θέλουμε να εκτυπώσουμε τα χαρακτηριστικά του αυτοκινήτου που μας αρέσει μέσα από ένα απλό πρόγραμμα Python, θα γράφαμε τις εξής γραμμές κώδικα:

app.py

print('Name: Aston Martin')
print('Model: Vanquish S Coupe')
print('Max Speed: 324 km/h')

Output

Name: Aston Martin
Model: Vanquish S Coupe
Max Speed: 324 km/h

Αν παρατηρήσετε το αποτέλεσμα, θα δείτε ότι τα single quotes τα οποία χρησιμοποιήσαμε για να ορίσουμε το argument (δηλαδή το μήνυμα μας) που θα περάσουμε στο function δεν εμφανίζονται στο τελικό αποτέλεσμα στην οθόνη μας. Απλά χρειάζονται για να καταλάβει η Python ποια είναι η αρχή και το τέλος του μηνύματος που θέλουμε να δείξουμε σαν τελικό αποτέλεσμα στην οθόνη μας.

Επίσης, είναι σημαντικό να κατανοήσετε ότι η εκτέλεση του κώδικα γίνεται από πάνω προς τα κάτω και με την σειρά που έχουν γραφτεί τα functions. Κάθε γραμμή κώδικα Python που εκτελεί μια ολοκληρωμένη πράξη ονομάζεται statement. Για παράδειγμα, το να καλέσουμε την print( ) function σε κάποια γραμμή του κώδικα μας, αυτό είναι ένα statement.

STRINGS ΚΑΙ STRING LITERALS

Τα μηνύματα που έχουμε εκτυπώσει στην οθόνη μας δεν είναι τίποτα άλλο παρά μια ομάδα από χαρακτήρες. Στο προγραμματισμό γενικότερα μια ομάδα χαρακτήρων που χρησιμοποιείται ως δεδομένα ονομάζεται string. Όταν τώρα το string εμφανίζεται ή χρησιμοποιείται μέσα στον κώδικα μας τότε ονομάζεται string literal. Οπότε, στο προηγούμενο παράδειγμα,  αυτό που περάσαμε σαν argument στην print( ) function ήταν ένα string literal. Εξ ορισμού ένα string literal πρέπει να το περικλείουμε μέσα σε εισαγωγικά (quotes) για να καταλαβαίνει η Python από που ξεκινάει και που τελειώνει το string literal. Και αυτό ακριβώς κάναμε στο προηγούμενο κώδικα που εκτελέσαμε.

Η Python όμως μας δίνει την ευελιξία να χρησιμοποιήσουμε είτε single quotes( ‘ ‘ ), όπως ήδη έχουμε κάνει, είτε double quotes ( “ “ ). Αυτή η ευελιξία ίσως σας φανεί χρήσιμη σε εκείνες τις περιπτώσεις όπου το string literal περιέχει απόστροφο λόγω του αγγλικού συντακτικού. Σε αυτή την περίπτωση τότε θα πρέπει να χρησιμοποιήσετε double quotes για να ορίσετε το string literal ειδάλλως η Python δεν θα μπορέσει να καταλάβει ποια είναι η αρχή του string literal και που τελειώνει. Ας προσθέσουμε ένα ακόμα μήνυμα στον κώδικα μας αλλά επειδή περιέχει την έκφραση Aston Martins (στη γραμμή 1) θα πρέπει αναγκαστικά να χρησιμοποιήσουμε double quotes.

app.py

print("An upgraded version of Aston Martin's AM11 V12 engine")
print('Name: Aston Martin')
print('Model: Vanquish S Coupe')
print('Max Speed: 324 km/h')

Output

An upgraded version of Aston Martin's AM11 V12 engine
Name: Aston Martin
Model: Vanquish S Coupe
Max Speed: 324 km/h

Ακριβώς με την ίδια λογική θα μπορούσαμε να χρησιμοποιήσουμε single quotes για να τυπώσουμε ένα μήνυμα που περιέχει double quotes. Στον παρακάτω κώδικα περνάμε μερικά string literals στην print ( ) function με single quotes (γραμμή 1) και άλλα με double quotes (γραμμές 2-4).

app.py

print("An upgraded version of Aston Martin's AM11 V12 engine")
print('Name: "Aston Martin"')
print('Model: "Vanquish S Coupe"')
print('Max Speed: 324 km/h')

Output

An upgraded version of Aston Martin's AM11 V12 engine
Name: "Aston Martin"
Model: "Vanquish S Coupe"
Max Speed: 324 km/h

Η Python μας επιτρέπει να χρησιμοποιήσουμε επίσης και triple quotes είτε “ “ “ είτε ‘ ‘ ‘. Νομίζω ότι έχετε ήδη καταλάβει ότι τα triple quotes υπάρχουν γιατί προσφέρουν περισσότερες δυνατότητες σε σύγκριση με τα single quotes ή τα double quotes. Μια από τις δυνατότητες τους είναι να μπορούν να περικλείουν string literal που περιέχουν single quotes και double quotes σαν μέρος της πληροφορίας.

Το κύριο χαρακτηριστικό τους όμως είναι να η δυνατότητα τους να περικλείουν πολλαπλές γραμμές από string literals κάτι που λείπει σαν ικανότητα από τα single quotes και τα double quotes.

Αυτό που έχετε να προσέξετε με τα triple quotes είναι ότι θα εμφανίσουν το μήνυμα όπως ακριβώς το έχετε γράψει - δηλαδή με τα κενά, τα tabs που έχετε προσθέσει, τις αλλαγές γραμμών, κτλ.

app.py

print(""" The "Aston Martin Vanquish" is a grand tourer
            introduced by British Luxury automobile manufacturer
            Aston Martin in 2001 as a successor to the aging
            Virage range.""")
print("An upgraded version of Aston Martin's AM11 V12 engine")
print('Name: "Aston Martin"')
print('Model: "Vanquish S Coupe"')
print('Max Speed: 324 km/h')

Output

 The "Aston Martin Vanquish" is a grand tourer
            introduced by British Luxury automobile manufacturer
            Aston Martin in 2001 as a successor to the aging
            Virage range.
An upgraded version of Aston Martin's AM11 V12 engine
Name: "Aston Martin"
Model: "Vanquish S Coupe"
Max Speed: 324 km/h

COMMENTS

Τα comments είναι σύντομες επεξηγήσεις του κώδικα με την μορφή μικρού και συνοπτικού μηνύματος που τα αγνοεί η Python κατά την εκτέλεση της εφαρμογής αλλά είναι χρήσιμα στον προγραμματιστή γιατί μπορεί να γυρίσει πίσω στον κώδικα που έγραψε πριν καιρό και να θυμηθεί, διαβάζοντας τα comments (σχόλια), για ποιο σκοπό είχαν γραφτεί συγκεκριμένες λειτουργίες του κώδικα. Κάθε comment γραμμή ξεκινάει με το # σύμβολο.

Εκτός από την αρχή του προγράμματος, μπορούμε να προσθέσουμε ένα comment σε οποιαδήποτε γραμμή. Επίσης μπορούμε να προσθέσουμε και ένα comment αμέσως μετά το τέλος της γραμμής ενός  Python κώδικα αν θέλουμε να προσθέσουμε μια μικρή σημείωση για την συγκεκριμένη γραμμή κώδικα. Αυτά ονομάζονται end-line comments.

Ας προσθέσουμε λοιπόν στον κώδικα μας μερικά επεξηγηματικά comments.

app.py

# Technical specifications of the Aston Martin Vanquish
print(""" The "Aston Martin Vanquish" is a grand tourer
            introduced by British Luxury automobile manufacturer
            Aston Martin in 2001 as a successor to the aging
            Virage range.""")
print("An upgraded version of Aston Martin's AM11 V12 engine")
print('Name: "Aston Martin"')
print('Model: "Vanquish S Coupe"')
print('Max Speed: 324 km/h') # max speed of Aston Martin

Output

 The "Aston Martin Vanquish" is a grand tourer
            introduced by British Luxury automobile manufacturer
            Aston Martin in 2001 as a successor to the aging
            Virage range.
An upgraded version of Aston Martin's AM11 V12 engine
Name: "Aston Martin"
Model: "Vanquish S Coupe"
Max Speed: 324 km/h

Εάν ξεκινάτε τώρα τον προγραμματισμό, υιοθετήστε την συνήθεια να προσθέτετε σχόλια στον κώδικα σας ασχέτως αν μπορεί να ξοδέψετε λίγο έξτρα χρόνο για να το κάνετε. Το σίγουρο είναι ότι στο μέλλον θα εξοικονομήσετε πολύ χρόνο σε εσάς και στους συναδέλφους σας όταν θα πρέπει να τροποποιήσετε τον κώδικα ή πρέπει να εντοπίσετε κάποιο σφάλμα. Μεγάλα και σύνθετα προγράμματα είναι σχεδόν αδύνατο να διαβαστούν γρήγορα και να κατανοηθούν σωστά αν δεν υπάρχουν τα κατάλληλα comments μέσα στον κώδικα.

Μην ξεχάσετε να κάνετε ένα μικρό donation έτσι ώστε αυτό το site να μεγαλώσει ακόμα πιο πολύ και να έχει περισσότερες δυνατότητες στην online παράδοση δωρεάν μαθημάτων.

full-width

Post a Comment

0 Comments