PYTHON ΜΑΘΗΜΑ 2 – Python String Literals and Comments

 

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


ΕΙΣΑΓΩΓΗ

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

 Στο σημερινό μάθημα θα καλύψουμε τρία θεμελιώδη κομμάτια του προγραμματισμού:

  • Θα δώσουμε έναν απλό ορισμό για το τι είναι ένα "Function" (Συνάρτηση) στην Python, ώστε να καταλαβαίνουμε τι χρησιμοποιούμε.
  •  Θα μάθουμε πώς να "μιλάμε" στον χρήστη, τυπώνοντας μηνύματα στο Terminal με την πασίγνωστη εντολή print().
  •  Θα δούμε πώς να γράφουμε Σχόλια (Comments), δηλαδή σημειώσεις μέσα στον κώδικα που βοηθούν εμάς και τους συνεργάτες μας, χωρίς να επηρεάζουν το πρόγραμμα.

Ας ξεκινήσουμε!

ΤΙ ΕΙΝΑΙ FUNCTION ΚΑΙ Η ΕΝΤΟΛΗ PRINT

Ας ξεκινήσουμε δίνοντας έναν απλό ορισμό.

Τι είναι ένα Function (Συνάρτηση); Σκεφτείτε το function σαν μια "μικρή μηχανή" ή μια ομάδα εντολών που έχει φτιαχτεί για να κάνει μία συγκεκριμένη δουλειά. Η Python διαθέτει μια τεράστια λίστα από έτοιμα (built-in) functions που μπορούμε να χρησιμοποιήσουμε αμέσως.

Το πιο διάσημο και χρήσιμο από αυτά είναι το print(). Η δουλειά του είναι απλή αλλά απαραίτητη: Να εμφανίζει (να τυπώνει) μηνύματα στην οθόνη του υπολογιστή μας (στο Terminal).

Για να χρησιμοποιήσουμε (να "καλέσουμε") ένα function, γράφουμε το όνομά του και αμέσως μετά ανοίγουμε και κλείνουμε παρενθέσεις ().

Μέσα σε αυτές τις παρενθέσεις βάζουμε την πληροφορία που θέλουμε να επεξεργαστεί το function. Αυτή η πληροφορία ονομάζεται Argument (όρισμα).

Στην περίπτωση της print(), το argument είναι το κείμενο που θέλουμε να εμφανιστεί.

⚠️ Προσοχή στη σύνταξη: Για να καταλάβει η Python ότι γράφουμε κείμενο (String), πρέπει να το βάλουμε μέσα σε εισαγωγικά. Μπορούμε να χρησιμοποιήσουμε είτε μονά (' ') είτε διπλά (" ") εισαγωγικά.

Ας δούμε το παράδειγμα με τα χαρακτηριστικά ενός αυτοκινήτου που αναφέραμε:

app.py
print('Tesla Model 3')
print('Electric Motor')
print('Red Color')
print('Top Speed: 260 km/h')

Αν τρέξετε τον παραπάνω κώδικα (θυμηθείτε: Save Ctrl+S και μετά Run ▶️), θα δείτε στο Terminal να εμφανίζονται οι γραμμές μία προς μία. 

Output

Αποτέλεσμα εκτέλεσης κώδικα Python

Γιατί εξαφανίστηκαν τα εισαγωγικά; 

Ίσως παρατηρήσατε κάτι ενδιαφέρον στο προηγούμενο παράδειγμα: Στον κώδικα γράψαμε print('Tesla Model 3'), αλλά στην οθόνη εμφανίστηκε σκέτο Tesla Model 3. Πού πήγαν τα εισαγωγικά;

Μην ανησυχείτε, δεν εξαφανίστηκαν κατά λάθος! Τα μονά εισαγωγικά (' ') ή τα διπλά (" ") λειτουργούν ως οριοθέτες. Χρησιμεύουν μόνο για να πουν στην Python: "Εδώ ξεκινάει το κείμενο και εδώ τελειώνει".

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

Η Ροή Εκτέλεσης και τα Statements 

 Ένα άλλο βασικό χαρακτηριστικό της Python είναι η σειρά με την οποία εκτελεί τις εντολές.

Κανόνας: Η εκτέλεση του κώδικα γίνεται πάντα από πάνω προς τα κάτω, γραμμή προς γραμμή. 

Όπως διαβάζουμε ένα βιβλίο, έτσι και η Python ξεκινάει από την γραμμή 1, εκτελεί την εντολή, μετά πάει στη γραμμή 2, και ούτω καθεξής. Δεν πρόκειται ποτέ να εκτελέσει την 3η γραμμή πριν τελειώσει τη 2η. 

Τι είναι το Statement; Κάθε γραμμή κώδικα που ολοκληρώνει μια συγκεκριμένη ενέργεια, ονομάζεται Statement (Δήλωση/Εντολή).

Για παράδειγμα:

  • Η εντολή print('Hello') είναι ένα statement.
  •  Η εντολή x = 5 (που θα δούμε μετά) είναι ένα άλλο statement.

Σκεφτείτε τα statements σαν τις "προτάσεις" σε μια γλώσσα. Πολλές προτάσεις μαζί, φτιάχνουν μια ιστορία (το πρόγραμμά μας).

Strings KAI String Literals: Η ΘΕΩΡΙΑ ΠΙΣΩ ΑΠΟ ΤΟ ΚΕΙΜΕΝΟ

Μέχρι στιγμής τυπώνουμε μηνύματα, αλλά τι είναι αυτά τα μηνύματα για την Python;

Στον προγραμματισμό, κάθε ομάδα χαρακτήρων (γράμματα, αριθμοί, σύμβολα) που μπαίνουν στη σειρά, ονομάζεται String (συμβολοσειρά).

Ποια η διαφορά με το String Literal;

  • String: Είναι η έννοια του κειμένου γενικά.
  • String Literal: Είναι όταν γράφουμε το κείμενο κυριολεκτικά μέσα στον κώδικά μας (όπως το 'Tesla' που γράψαμε πριν).

Για να καταλάβει η Python πού αρχίζει και πού τελειώνει ένα String Literal, πρέπει υποχρεωτικά να το "αγκαλιάσουμε" με εισαγωγικά (quotes).

Μονά ή Διπλά Εισαγωγικά; (Η λύση στο πρόβλημα)

Η Python είναι πολύ ευέλικτη: Μας επιτρέπει να χρησιμοποιούμε είτε μονά (' ') είτε διπλά (" ") εισαγωγικά. Και τα δύο κάνουν την ίδια δουλειά.

Γιατί όμως χρειαζόμαστε και τα δύο; Η απάντηση κρύβεται στην Αγγλική γλώσσα (και όχι μόνο). Σκεφτείτε τι θα γινόταν αν θέλαμε να τυπώσουμε τη φράση: Aston Martin's Engine

Αν χρησιμοποιούσαμε μονά εισαγωγικά, η Python θα μπερδευόταν:

Όπως βλέπετε, η Python νομίζει ότι το string τελειώνει στο 's και μετά δεν ξέρει τι να κάνει το υπόλοιπο, πετώντας λάθος (SyntaxError). 

Η Λύση: Σε αυτές τις περιπτώσεις, χρησιμοποιούμε διπλά εισαγωγικά εξωτερικά, ώστε να μπορούμε να έχουμε μονή απόστροφο μέσα στο κείμενο ανενόχλητοι! 

Παράδειγμα Κώδικα (Aston Martin) 

Ας δούμε πώς γράφεται σωστά ο κώδικας για να αποφύγουμε τα λάθη. Δημιουργήστε ένα νέο αρχείο app.py και γράψτε: 

app.py

# Χρήση διπλών εισαγωγικών λόγω της αποστρόφου (Martin's)
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

Αποτέλεσμα εκτέλεσης κώδικα Python

Τι να προσέξετε: Στην πρώτη γραμμή, αν βάλετε μονά εισαγωγικά, το πρόγραμμα θα "σκάσει" (Crash). Με τα διπλά εισαγωγικά, τρέχει τέλεια!

Triple Quotes: Η "Υπερδύναμη" των Κειμένων 

Μέχρι τώρα μάθαμε για τα μονά και τα διπλά εισαγωγικά. Η Python όμως κρύβει έναν άσο στο μανίκι της: τα Triple Quotes (Τριπλά Εισαγωγικά), δηλαδή """ ή '''.  

Γιατί να τα χρησιμοποιήσουμε; Για δύο πολύ σοβαρούς λόγους: 

  1. Το πρόβλημα των Πολλαπλών Γραμμών Αν προσπαθήσετε να γράψετε ένα μεγάλο κείμενο και πατήσετε Enter για να αλλάξετε γραμμή χρησιμοποιώντας απλά εισαγωγικά, η Python θα βγάλει λάθος (SyntaxError). Δεν της αρέσει να "κόβεται" η εντολή στη μέση.Τα Triple Quotes λύνουν αυτό το πρόβλημα. Μας επιτρέπουν να γράφουμε κείμενο που απλώνεται σε όσες γραμμές θέλουμε, χωρίς κανένα παράπονο από τον υπολογιστή!
  2.  Το πρόβλημα των Μεικτών Εισαγωγικών Τι γίνεται αν το κείμενό μας περιέχει ΚΑΙ μονά ΚΑΙ διπλά εισαγωγικά; (π.χ. "Aston Martin's" car). Με τα Triple Quotes, μπορούμε να τα συμπεριλάβουμε όλα μέσα στο κείμενο χωρίς να χρειάζεται να ανησυχούμε για το ποιο είδος εισαγωγικών θα χρησιμοποιήσουμε απέξω. 

 Ας δούμε το παράδειγμα με την Aston Martin.

⚠️ ΠΡΟΣΟΧΗ: Τα Triple Quotes τυπώνουν το κείμενο ΑΚΡΙΒΩΣ όπως το γράφετε. Αυτό σημαίνει ότι αν αφήσετε κενά (space) ή Tabs στην αρχή της κάθε γραμμής για να φαίνεται ωραίος ο κώδικας, αυτά τα κενά θα τυπωθούν και στην οθόνη!

Αντιγράψτε τον παρακάτω κώδικα στο αρχείο app.py:

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

Αποτέλεσμα εκτέλεσης κώδικα Python

ΣΧΟΛΙΑ (Comments): ΟΙ ΣΗΜΕΙΩΣΕΙΣ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗ

Φανταστείτε ότι γράφετε έναν πολύπλοκο κώδικα σήμερα. Είστε σίγουροι ότι σε 6 μήνες από τώρα θα θυμάστε ακριβώς γιατί γράψατε εκείνη τη συγκεκριμένη εντολή;

Εδώ έρχονται τα Σχόλια (Comments).

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

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

Πώς γράφουμε Σχόλια;

Στην Python, ο "μαγικός" χαρακτήρας για τα σχόλια είναι η δίεση: #. Οτιδήποτε γράψουμε δεξιά από αυτό το σύμβολο, η Python το θεωρεί αόρατο.

Έχουμε δύο βασικούς τρόπους να τα χρησιμοποιήσουμε:

  • Block Comments: Σε δική τους ξεχωριστή γραμμή, συνήθως πριν από κάποιο κομμάτι κώδικα που θέλουμε να εξηγήσουμε.
  •  End-line Comments: Στο τέλος μιας γραμμής κώδικα, για να εξηγήσουμε τι κάνει συγκεκριμένα εκείνη η εντολή.

Ο Τελικός μας Κώδικας (με Σχόλια)

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

Αντιγράψτε το στο app.py:

app.py

# Technical specifications of the Aston Martin Vanquish (Block Comment)
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 (End-line Comment)

Output

Αποτέλεσμα εκτέλεσης κώδικα Python

Η «Χρυσή» Συνήθεια του Προγραμματιστή

Αν ξεκινάτε τώρα το ταξίδι σας στον προγραμματισμό, σας δίνω μια συμβουλή που θα με θυμηθείτε: Υιοθετήστε τη συνήθεια των σχολίων ΣΗΜΕΡΑ.
 
Μπορεί τώρα να σας φαίνεται ότι χάνετε χρόνο γράφοντας επεξηγήσεις, αλλά στην πραγματικότητα κάνετε μια επένδυση.
 
Γιατί είναι τόσο σημαντικό; Σκεφτείτε ότι τον κώδικα τον γράφουμε μία φορά, αλλά τον διαβάζουμε εκατοντάδες φορές στο μέλλον.
 
  • Για τον μελλοντικό εαυτό σας: Σε 6 μήνες, ούτε εσείς οι ίδιοι θα θυμάστε τι κάνει εκείνη η πολύπλοκη συνάρτηση χωρίς σχόλια.
  • Για την ομάδα: Κανένας συνάδελφος δεν μπορεί να συνεργαστεί αποτελεσματικά σε ένα μεγάλο project αν πρέπει να μαντεύει τι κάνει ο κώδικάς σας.
Ένα καθαρό πρόγραμμα με σωστά σχόλια είναι δείγμα επαγγελματισμού. Μην το αμελείτε!

❤️ Στηρίξτε το Ground of Code

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

full-width

Post a Comment

0 Comments