Ενότητα 1 - Τμήμα 1 - Έξοδος

Ιστότοπος: ΕΛ/ΛΑΚ Moodle
Μάθημα: Εργαστήριο Python
Βιβλίο: Ενότητα 1 - Τμήμα 1 - Έξοδος
Εκτυπώθηκε από: Guest user
Ημερομηνία: Πέμπτη, 2 Μαΐου 2024, 3:19 PM

Περιγραφή

Μετά την ολοκλήρωση αυτής της ενότητας οι φοιτητές θα μπορούν να:

  • γράφουν εντολές για αποστολή στην έξοδο
  • συνθέτουν μια εντολή για πολλαπλή έξοδο
  • δηλώνουν και να χρησιμοποιούν τους Κώδικες Escape
  • δημιουργούν σχόλια
  • χρησιμοποιούν αριθμητικούς τελεστές


1.1.1 - Εμφάνιση κειμένου

Πώς ένα πρόγραμμα εμφανίζει κάτι στην οθόνη; Ο κώδικας είναι απλός. Απαιτείται μόνο μία γραμμή:

>>> print("Hello World.")

Αυτό το πρόγραμμα εμφανίζει την πρόταση "Hello World" στην οθόνη. Εισάγετε την στην γραμμή εντολών CLI και δείτε πώς λειτουργεί. Δοκιμάστε να εμφανίσετε και άλλες λέξεις ή φράσεις. Ο υπολογιστής θα εμφανίσει σχεδόν ότι σας αρέσει.

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

Παρατηρήστε ότι υπάρχουν διπλά εισαγωγικά γύρω από το προς εμφάνιση κείμενο. Εάν μια εντολή εκτύπωσης έχει εισαγωγικά γύρω από το κείμενο, ο υπολογιστής θα το εμφανίσει ακριβώς όπως έχει γραφτεί. Για παράδειγμα, αυτό το πρόγραμμα θα εμφανίσει 2 + 3:

>>> print("2+3")

Προχωρήστε και δοκιμάστε να εισαγάγετε την έκφραση μέσα στο CLI.

1.1.2 - Εμφανίζοντας αποτελέσματα εκφράσεων

Αυτή η εντολή δεν έχει εισαγωγικά στο 2 + 3, και ο υπολογιστής θα το αξιολογήσει ως μαθηματική έκφραση. Θα εμφανίσει 5 αντί για 2 + 3.

>>> print(2 + 3)

Ο παρακάτω κώδικας θα δημιουργήσει ένα σφάλμα επειδή ο υπολογιστής θα προσπαθήσει να αξιολογήσει το "Hello World" ως μαθηματική έκφραση και αυτό δεν λειτουργεί καθόλου:

>>> print(Hello World)

Ο παραπάνω κώδικας θα εκτυπώσει ένα σφάλμα SyntaxError: invalid syntax που στην γλώσσα που μιλά ο υπολογιστής δημαίνει ότι δεν ξέρει τι σημαίνει "Hello" και "World".

Προσπαθήστε να εμφανίστετε άλλες εκφράσεις χρησιμοποιώντας το CLI.

1.1.3 - Εμφανίζοντας περισσότερες εκφράσεις

Μια εντολή εμφάνισης μπορεί να εξάγει πολλά πράγματα ταυτόχρονα. Κάθε στοιχείο πρέπει να χωρίζεται με κόμμα. Για παράδειγμα, αυτός ο κώδικας θα εμφανίσει: Your new score is 1040

>>> print("Your new score is", 1030 + 10)

Η επόμενη γραμμή κώδικα θα εκτυπώσει "Your new score is 1030+10". Οι αριθμοί δεν προστίθενται επειδή βρίσκονται μέσα στα εισαγωγικά. Οτιδήποτε στο εσωτερικό εισαγωγικών, ο υπολογιστής το αντιμετωπίζει ως κείμενο. Οτιδήποτε εκτός, ο υπολογιστής θεωρεί ότι πρόκειται για μαθηματική δήλωση ή κώδικα υπολογιστή.

>>> print("Your new score is", "1030 + 10")

Αυτό το επόμενο παράδειγμα κώδικα δεν λειτουργεί καθόλου. Αυτό συμβαίνει επειδή δεν υπάρχει κόμμα που να διαχωρίζει το κείμενο μεταξύ των εισαγωγικών και των 1030 + 10. Στην αρχή, μπορεί να φαίνεται ότι υπάρχει ένα κόμμα, αλλά το κόμμα βρίσκεται μέσα στα εισαγωγικά. Το κόμμα που διαχωρίζει τους όρους προς εμφάνιση πρέπει να βρίσκεται εκτός των εισαγωγικών. Αν ο προγραμματιστής θέλει να εκτυπωθεί ένα κόμμα, τότε πρέπει να βρίσκεται μέσα στα εισαγωγικά:

>>> print("Your new score is," 1030 + 10)

Αυτό το επόμενο παράδειγμα λειτουργεί, επειδή υπάρχει ένα κόμμα που διαχωρίζει τους όρους.Εμφανίζει:

Your new score is, 1040

Σημειώστε ότι εκτυπώνεται μόνο ένα κόμμα. Τα κόμματα έξω από τα εισαγωγικά διαχωρίζουν τους όρους, ενώ τα κόμματα μέσα στα εισαγωγικά εμφανίζονται. Το πρώτο κόμμα τυπώνεται, το δεύτερο χρησιμοποιείται για να διαχωρίσετε τους όρους.

>>> print("Your new score is,", 1030 + 10)

Τώρα προσπαθήστε να σκεφτείτε.Πότε ένα κόμμα γράφετε έξω από την παρένθεση και πότεόχι. Πότε πρέπει να βάλετε ένα κόμμα και πότε όχι;

1.1.4 - Escape Codes (κώδικες διαφυγής)

Εάν χρησιμοποιούνται εισαγωγικά για να καθορίσετε την αρχή και το τέλος της του κειμένου που θέλετε να εμφανίσετε, πώς εμφανίζετε ένα σύνολο διπλών εισαγωγικών; Για παράδειγμα:

>>> print("I want to print a double quote " for some reason.")

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

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

>>> print("I want to print a double quote \" for some reason.")

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

>>> print("The file is stored in C:\new folder")

Γιατί; Επειδή η \n είναι ένας κώδικας διαφυγής. Για να εκτυπώσετε την ανάστροφη κάθετο είναι απαραίτητο να την προστατεύσετε έτσι:

>>> print("The file is stored in C:\\new folder")


What is a “Linefeed”? Try this example:

>>> print("This\nis\nmy\nsample.")

Η έξοδος από αυτήν την εντολή είναι:

This
is
my
sample.

Το \n είναι ένα linefeed. Μετακινεί το "δρομέα" όπου ο υπολογιστής θα εμφανίσει το κείμενο σε μια νέα γραμμή. Ο υπολογιστής αποθηκεύει στη μνήμη του όλο το κείμενο σε μια μεγάλη μεγάλη γραμμή. Ξέρει να εμφανίζει το κείμενο σε διαφορετικές γραμμές λόγω της τοποθέτησης χαρακτήρων \n.

1.1.5 - Σχόλια

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

Υπάρχουν δύο τρόποι για να δημιουργήσετε ένα σχόλιο . Το πρώτο είναι να χρησιμοποιήσετε το σύμβολο #. Ο υπολογιστής θα αγνοήσει οποιοδήποτε κείμενο σε ένα πρόγραμμα Python που εμφανίζεται μετά το #. Για παράδειγμα:

>>> # This is a comment, it begins with a # sign

>>> # and the computer will ignore it.

>>> print("This is not a comment, the computer will")

>>> print("run this and print it out.")

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

>>> print("A # sign between quotes is not a comment.")

>>> # print("This is a comment, even if it is computer code.")

>>> print("Hi") # This is an end-of-line comment

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

'''

This is
a
multi
line
comment. Nothing
Will run in between these quotes.
print("There")

'''


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

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


1.1.6 - Εκχώρηση τιμής

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


Ο τελεστής είναι ένα σύμβολο όπως το + ή το -. Ο τελεστής εκχώρησης είναι το σύμβολο = . Αποθηκεύει μια τιμή σε μια μεταβλητή που θα χρησιμοποιηθεί αργότερα. Ο παρακάτω κώδικας θα αντιστοιχίσει τον αριθμό 10 στη μεταβλητή x και στη συνέχεια θα εκτυπώσει (εμφανίσει στην οθόνη) την τιμή που είναι αποθηκευμένη στο x.

>>> # Create a variable x

>>> # Store the value 10 into it.

>>> x = 10

>>> # This prints the value stored in x.

>>> print(x)

>>> # This prints the letter x, but not the value in x

>>> print("x")

>>> # This prints "x= 10"

>>> print("x=", 10)

Μια εντολή εκχώρησης (μια γραμμή κώδικα χρησιμοποιώντας τον τελεστή =) είναι διαφορετική από την αλγεβρική ισότητα που έμαθε στα μαθηματικά. Μην το σκέφτεστε ως το ίδιο. Στην αριστερή πλευρά ενός τελεστή εκχώρησης πρέπει να υπάρχει ακριβώς μια μεταβλητή. Τίποτα άλλο δεν πρέπει να υπάρχει εκεί.

Στη δεξιά πλευρά του τελεστή ίσον = υπάρχει μια έκφραση. Μια έκφραση είναι οτιδήποτε μεταφράζεται σε μια τιμή, αριθμητική ή όχι. Εξετάστε τον παρακάτω κώδικα.

>>> x = x + 1

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

1.1.7 - Μεταβλητές

Τι είναι λοιπόν μια μεταβλητή; Μεταβλητή είναι ένα δοχείο, μια θέση στη μνήμη του υπολογιστή. Και τι περιέχει; Μπορεί να περιέχει σχεδόν τα πάντα από τους αριθμούς (ακέραιος , δεκαδικός ή μιγαδικός) μέχρι συμβολοσειρές.

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

Στις μεταβλητές γίνεται διάκριση πεζών-κεφαλαίων. Αυτό μπορεί να προκαλέσει σύγχυση εάν ένας προγραμματιστής δεν το περιμένει. Στον παρακάτω κώδικα, η έξοδος θα είναι 6 και όχι 5 επειδή υπάρχουν δύο διαφορετικές μεταβλητές, η x και η X.

>>> x = 6

>>> X = 5

>>> print(x)

>>> print(X)

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

Ελέγξτε τον παρακάτω πίνακα και σκεφτείτε ποιοι είναι οι κανόνες για την ονομασία.


Όνομα Μεταβλητής
Προτεινόμενο Όνομα    
Λανθασμένο Όνομα   
Νόμιμο αλλά όχι κατάλληλο   
first_name first name FirstName
distance 9ds firstName
ds9 %correct D9

Τα μεταβλητά ονόματα μεταβλητών με κεφαλαία, όπως το MAX_SPEED, επιτρέπονται μόνο σε περιπτώσεις όπου η τιμή της μεταβλητής δεν πρέπει ποτέ να αλλάξει. Μια μεταβλητή που δεν είναι μεταβάλεται ονομάζεται σταθερά.

1.1.8 - Τελεστές

Για πιο σύνθετες μαθηματικές διαδικασίες, είναι διαθέσιμες οι κοινές μαθηματικές πράξεις.


Τελεστές
τελεστής   
πράξη    
παράδειγμα   
κώδικας   
+                               
πρόσθεση
3+2 a = 3 + 2
- αφαίρεση
3-2 b = 3 - 2
* πολλαπλασιασμός
3*2 c = 3 * 2
/ διαίρεση
10/2 d = 10 / 2
// πηλίκο ακέραιας διαίρεσης
10//3 e = 10 // 3
** δύναμη
23 f = 2 ** 3
% υπόλοιπο ακέραιας διαίρεσης  
8%3 g = 8 % 3

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

>>> a = 3 + 2

>>> print(a)

Το πηλίκο της ακέραις διαίρεσης 11//2 είναι ο ακέραιος 2 και όχι ο 5.5 ενώ το αποτέλεσμα της πράξης 99//100 είναι 0.

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