Οι τελεστές είναι ειδικά σύμβολα ή λέξεις που χρησιμοποιούνται στην Python για να εκτελέσουν ειδικές λειτουργίες σε μεταβλητές ή τιμές. Υπάρχουν πολλοί τελεστές στην Python, καλύπτοντας διάφορους τομείς και λειτουργίες.
Ορισμένοι από τους πιο συνηθισμένους τελεστές είναι:
- Τελεστές αριθμητικών πράξεων:
+
(πρόσθεση),-
(αφαίρεση),*
(πολλαπλασιασμός),/
(διαίρεση),**
(υψωτική),%
(ακέραιο υπόλοιπο),//
(ακέραια διαίρεση). - Τελεστές σύγκρισης:
==
(ίσο με),!=
(διάφορο από),<
(μικρότερο από),>
(μεγαλύτερο από),<=
(μικρότερο ή ίσο με),>=
(μεγαλύτερο ή ίσο με). - Τελεστές λογικής:
and
(λογική ΚΑΙ),or
(λογική Ή),not
(λογική ΜΗ). - Άλλοι τελεστές:
=
(ανάθεση τιμής),+=
(αύξηση και ανάθεση),-=
(μείωση και ανάθεση),*=
(πολλαπλασιασμός και ανάθεση),/=
(διαίρεση και ανάθεση) κ.ά.
Αυτοί οι τελεστές μας επιτρέπουν να πραγματοποιούμε διάφορες πράξεις, συγκρίσεις και λογικές επιλογές στην Python. Μπορούμε να τους χρησιμοποιήσουμε για να εκτελέσουμε πράξεις με αριθμούς, σύγκριση τιμών, ελέγχους συνθηκών και πολλά άλλα.
Παρακάτω παραθέτουμε κάποια παραδείγματα συνηθέστερων τελεστών στην Python:
Αριθμητικοί τελεστές:
x = 10 y = 3 print(x + y) # Άθροισμα: 13 print(x - y) # Αφαίρεση: 7 print(x * y) # Πολλαπλασιασμός: 30 print(x / y) # Διαίρεση: 3.3333333333333335 print(x // y) # Ακέραιος Πηλίκος: 3 print(x % y) # Υπόλοιπο Διαίρεσης: 1 print(x ** y) # Ύψωση σε: 1000
Τελεστές σύγκρισης:
x = 10 y = 5 print(x == y) # Έλεγχος Ισότητας: False print(x != y) # Έλεγχος Ανισότητας: True print(x > y) # Έλεγχος Μεγαλύτερος από: True print(x < y) # Έλεγχος Μικρότερος από: False print(x >= y) # Έλεγχος Μεγαλύτερος ή Ίσος με: True print(x <= y) # Έλεγχος Μικρότερος ή Ίσος με: False
Λογικοί τελεστές:
x = True y = False print(x and y) # Λογική Σύζευξη: False print(x or y) # Λογική Διάζευξη: True print(not x) # Λογική Άρνηση: False
Οι λογικοί τελεστές συνήθως χρησιμοποιούνται στη συγκριτική αξιολόγηση των δύο συνθηκών. Ο τελεστής and
επιστρέφει True αν και οι δύο συνθήκες είναι True. Ο τελεστής or
επιστρέφει True αν τουλάχιστον μία από τις δύο συνθήκες είναι True. Ο τελεστής not
αντιστρέφει την τιμή μιας συνθήκης, δηλαδή True γίνεται False και False γίνεται True.
[adinserter block=”2″]
Επιπλέον, υπάρχουν και άλλοι τελεστές στην Python, όπως ο τελεστής ανάθεσης =
, ο τελεστής αύξησης +=
, ο τελεστής μείωσης -=
και άλλοι, που χρησιμοποιούνται για την εκχώρηση και τροποποίηση τιμών σε μεταβλητές.
Τελεστές σύγκρισης (Comparison operators):
Οι τελεστές σύγκρισης συγκρίνουν δύο τιμές και επιστρέφουν μια boolean τιμή. Παρακάτω είναι μερικοί από τους συνηθισμένους τελεστές σύγκρισης στην Python:
== Έλεγχος ισότητας != Έλεγχος ανισότητας > Μεγαλύτερο από < Μικρότερο από >= Μεγαλύτερο ή ίσο με <= Μικρότερο ή ίσο με
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = 5 y = 3 print(x > y) # Εκτυπώνει True print(x == y) # Εκτυπώνει False print(x <= y) # Εκτυπώνει False
Τελεστές ταυτότητας (Identity operators):
Οι τελεστές ταυτότητας συγκρίνουν τα αντικείμενα και επιστρέφουν True αν τα αντικείμενα είναι ταυτόσημα (έχουν την ίδια ταυτότητα) και False αν δεν είναι. Στην Python, τα αντικείμενα δημιουργούνται όταν αναθέτουμε μια τιμή σε μια μεταβλητή. Οι τελεστές ταυτότητας είναι οι εξής:
is Επιστρέφει True αν οι δύο μεταβλητές είναι ταυτόσημες is not Επιστρέφει True αν οι δύο μεταβλητές δεν είναι ταυτόσημες
Παρακάτω μπορείτε να δείτε ένα παρά
δειγμα:
x = ["apple", "banana"] y = ["apple", "banana"] z = x print(x is z) # Εκτυπώνει True, γιατί x και z είναι ταυτόσημα print(x is y) # Εκτυπώνει False, γιατί x και y δεν είναι ταυτόσημα print(x == y) # Εκτυπώνει True, γιατί το περιεχόμενο του x είναι ίδιο με το περιεχόμενο του y print(x is not z) # Εκτυπώνει False, γιατί x και z είναι ταυτόσημα print(x is not y) # Εκτυπώνει True, γιατί x και y δεν είναι ταυτόσημα
Τελεστές συνδρομής (Membership operators):
Οι τελεστές συνδρομής χρησιμοποιούνται για να ελέγξουν αν ένα στοιχείο υπάρχει σε μια ακολουθία. Υπάρχουν δύο τελεστές συνδρομής στην Python:
in Επιστρέφει True αν το στοιχείο υπάρχει στην ακολουθία not in Επιστρέφει True αν το στοιχείο δεν υπάρχει στην ακολουθία
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = ["apple", "banana"] print("banana" in x) # Εκτυπώνει True print("orange" in x) # Εκτυπώνει False print("orange" not in x) # Εκτυπώνει True
Δυαδικοί τελεστές (Bitwise operators):
Οι δυαδικοί τελεστές εφαρμόζονται στους αριθμούς και εκτελούν λογικές λειτουργίες σε κάθε bit του αριθμού. Αυτοί είναι οι δυαδικοί τελεστές στην Python:
[adinserter block=”3″]
& AND Επιστρέφει 1 σε κάθε bit που είναι 1 και στους δύο αριθμούς | OR Επιστρέφει 1 σε κάθε bit που είναι 1 σε κάποιον από τους δύο αριθμούς ^ XOR Επιστρέφει 1 σε κάθε bit που είναι 1 μόνο σε έναν από τους δύο αριθμούς ~ NOT Εναλλάσσει τα bits, δηλαδή τα bits 0 γίνονται 1 και τα bits 1 γίνονται 0 << Zero fill left shift Μετατοπίζει τα bits αριστερά και τα κενά bits γίνονται 0 >> Signed right shift Μετατοπίζει τα bits δεξιά και τα κενά bits γίνονται 0 ή 1 ανάλογα με το αρχικό πρόσημο του αριθμού
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = 0b11110000 y = 0b10101010 print(bin(x & y)) # Εκτυπώνει 0b10100000 print(bin(x | y)) # Εκτυπώνει 0b11111010 print(bin(x ^ y)) # Εκτυπώνει 0b01011010 print(bin(~x)) # Εκτυπώνει -0b11110001 print(bin(x << 2)) # Εκτυπώνει 0b11000000 print(bin(x >> 2)) # Εκτυπώνει 0b1111
Οι αριθμητικοί τελεστές στην Python είναι οι εξής:
+ Πρόσθεση - Αφαίρεση * Πολλαπλασιασμός / Διαίρεση % Υπόλοιπο διαίρεσης ** Εκθετική συνάρτηση (δύναμη) // Πηλίκο προς τα κάτω
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = 10 y = 3 print(x + y) # Εκτυπώνει 13 print(x - y) # Εκτυπώνει 7 print(x * y) # Εκτυπώνει 30 print(x / y) # Εκτυπώνει 3.3333333333333335 print(x % y) # Εκτυπώνει 1 print(x ** y) # Εκτυπώνει 1000 print(x // y) # Εκτυπώνει 3
Οι τελεστές ανάθεσης στην Python είναι οι εξής:
= Απλή ανάθεση += Πρόσθεση και ανάθεση -= Αφαίρεση και ανάθεση *= Πολλαπλασιασμός και ανάθεση /= Διαίρεση και ανάθεση %= Υπόλοιπο διαίρεσης και ανάθεση //= Πηλίκο προς τα κάτω και ανάθεση **= Εκθετική συνάρτηση και ανάθεση &= Τελεστής ΚΑΙ και ανάθεση |= Τελεστής Ή και ανάθεση ^= Τελεστής ΑΠΟΚΛΕΙΣΤΙΚΟ Ή και ανάθεση >>= Αριστερή μετατόπιση και ανάθεση <<= Δεξιά μετατόπιση και ανάθεση
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = 5 print(x) # Εκτυπώνει 5 x += 3 print(x) # Εκτυπώνει 8 x -= 2 print(x) # Εκτυπώνει 6 x *= 2 print(x) # Εκτυπώνει 12 x /= 3 print(x) # Εκτυπώνει 4.0 x %= 3 print(x) # Εκτυπώνει 1.0 x //= 2 print(x) # Εκτυπώνει 0.0 x **= 2 print(x) # Εκτυπώνει 0.0 x = 5 x &= 3 print(x) # Εκτυπώνει 1 x |= 3 print(x) # Εκτυπώνει 3 x ^= 3 print(x) # Εκτυπώνει 0 x = 5 x >>= 1 print(x) # Εκτυπώνει 2 x <<= 1 print(x) # Εκτυπώνε
Οι τελεστές σύγκρισης στην Python είναι οι εξής:
[adinserter block=”4″]
== Ίσο με != Διάφορο από > Μεγαλύτερο από < Μικρότερο από >= Μεγαλύτερο από ή ίσο με <= Μικρότερο από ή ίσο με
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = 5 y = 3 print(x == y) # Εκτυπώνει False print(x != y) # Εκτυπώνει True print(x > y) # Εκτυπώνει True print(x < y) # Εκτυπώνει False print(x >= y) # Εκτυπώνει True print(x <= y) # Εκτυπώνει False
Παρατηρούμε ότι η σύγκριση των αριθμών x
και y
επιστρέφει αποτελέσματα που αντιστοιχούν στο αν ο x
είναι ίσος, μεγαλύτερος ή μικρότερος του y
. Επίσης, μπορούμε να συγκρίνουμε και μεταβλητές τύπου string, tuple και list αναλόγως με τον τρόπο που ορίζεται ο τελεστής σύγκρισης.
Οι λογικοί τελεστές στην Python είναι οι εξής:
and Λογική ΣΥΝΈΝΩΣΗ (AND) or Λογική ΔΙΑΊΡΕΣΗ (OR) not Λογική ΑΡΝΗΣΗ (NOT)
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = 5 print(x > 3 and x < 10) # Εκτυπώνει True print(x > 3 or x > 10) # Εκτυπώνει True print(not(x > 3 and x < 10)) # Εκτυπώνει False
Παρατηρούμε ότι ο τελεστής and
επιστρέφει True
μόνο αν και οι δύο συνθήκες που συνδέονται με αυτόν είναι True
, ενώ ο τελεστής or
επιστρέφει True
αν τουλάχιστον μία από τις δύο συνθήκες είναι True
. Τέλος, ο τελεστής not
αντιστρέφει το αποτέλεσμα μιας συνθήκης.
Οι ταυτοτικοί τελεστές στην Python είναι οι εξής:
is Επιστρέφει True αν δυο μεταβλητές δείχνουν στο ίδιο αντικείμενο. is not Επιστρέφει True αν δυο μεταβλητές δείχνουν σε διαφορετικά αντικείμενα.
Παρακάτω μπορείτε να δείτε ένα παράδειγμα:
x = ["apple", "banana"] y = ["apple", "banana"] z = x print(x is z) # Εκτυπώνει True επειδή x και z δείχνουν στο ίδιο αντικείμενο print(x is y) # Εκτυπώνει False επειδή x και y δείχνουν σε διαφορετικά αντικείμενα, παρόλο που έχουν τα ίδια στοιχεία print(x == y) # Εκτυπώνει True επειδή x και y έχουν τα ίδια στοιχεία
Παρατηρούμε ότι ο τελεστής is
επιστρέφει True
αν οι δύο μεταβλητές δείχνουν στο ίδιο αντικείμενο, ενώ ο τελεστής is not
επιστρέφει True
αν οι δύο μεταβλητές δείχνουν σε διαφορετικά αντικείμενα.
Οι τελεστές μέλους χρησιμοποιούνται για να ελέγξουν αν μια ακολουθία παρουσιάζεται σε ένα αντικείμενο.
Οι τελεστές μέλους είναι οι εξής:
Τελεστής Περιγραφή Παράδειγμα in Επιστρέφει True αν βρίσκεται το στοιχείο στην ακολουθία “x” in “Hello World” not in Επιστρέφει True αν δεν βρίσκεται το στοιχείο στην ακολουθία “z” not in “Hello World”
Παραδείγματα:
# Έλεγχος εάν το στοιχείο υπάρχει στη λίστα my_list = [1, 2, 3, 4, 5] print(3 in my_list) # Επιστρέφει True print(6 in my_list) # Επιστρέφει False # Έλεγχος εάν το χαρακτήρας υπάρχει στο string my_string = "Hello World" print("o" in my_string) # Επιστρέφει True print("z" in my_string) # Επιστρέφει False # Χρήση του not in print(6 not in my_list) # Επιστρέφει True print("z" not in my_string) # Επιστρέφει True>
Οι λογικοί τελεστές στην Python εφαρμόζονται μόνο σε λογικές τιμές, όπως True
και False
, ενώ οι bitwise τελεστές εφαρμόζονται σε ακέραιους αριθμούς και εκτελούν λογικές πράξεις bit-by-bit.
[adinserter block=”5″]
Οι bitwise τελεστές που υποστηρίζονται από την Python είναι οι εξής:
&
AND: Κάνει τη λογική πράξη AND σε κάθε bit των αριθμών και επιστρέφει το αποτέλεσμα.|
OR: Κάνει τη λογική πράξη OR σε κάθε bit των αριθμών και επιστρέφει το αποτέλεσμα.^
XOR: Κάνει τη λογική πράξη XOR σε κάθε bit των αριθμών και επιστρέφει το αποτέλεσμα.~
NOT: Κάνει τη λογική πράξη NOT σε κάθε bit του αριθμού και επιστρέφει το αποτέλεσμα.<<
Shift Left: Μετακινεί όλα τα bit ενός αριθμού προς τα αριστερά κατά έναν αριθμό θέσεων και επιστρέφει το αποτέλεσμα.>>
Shift Right: Μετακινεί όλα τα bit ενός αριθμού προς τα δεξιά κατά έναν αριθμό θέσεων και επιστρέφει το αποτέλεσμα.
Η προτεραιότητα των τελεστών στην Python καθορίζει ποιος τελεστής θα εκτελεστεί πρώτος σε μια πράξη με πολλούς τελεστές. Παρακάτω είναι μια λίστα των τελεστών στη σειρά προτεραιότητας, με ελληνικά παραδείγματα:
- Παρενθέσεις () – Επιτρέπουν να καθορίσετε τη σειρά εκτέλεσης εντολών.
αποτέλεσμα = (5 + 3) * 2
- Παραγωγικοί τελεστές *, /, //, % – Εκτελούνται πρώτοι από τους αναπαραστάτες και τους αθροιστές.
αποτέλεσμα = 5 + 3 * 2 # Ο τελεστής * εκτελείται πρώτος
- Αναπαραστάτες +, – – Εκτελούνται μετά τους παραγωγικούς τελεστές.
αποτέλεσμα = 5 + 3 - 2 # Οι τελεστές + και - εκτελούνται από αριστερά προς τα δεξιά
- Συγκριτικοί τελεστές <, <=, >, >=, ==, != – Εκτελούνται μετά τους αναπαραστάτες και τους αθροιστές.
αποτέλεσμα = 5 + 3 < 2 * 6 # Οι τελεστές + και * εκτελούνται πρώτα, και έπειτα ο συγκριτικός τελεστής <
- Λογικοί τελεστές and, or, not – Εκτελούνται τελευταίοι από όλους τους τελεστές.
αποτέλεσμα = (5 < 6) and not (4 > 3) # Ο συγκριτικός τελεστής < εκτελείται πρώτα, έπειτα ο λογικός τελεστής not και στο τέλος ο λογικός τελεστής and
Είναι σημαντικό να κατανοήσετε τη σειρά προτεραιότητας των τελεστών στην Python, ώστε να μπορείτε να γράφετε κώδικα με σωστή λειτουργία. Αν δεν είστε σίγουροι για τη σειρά προτεραιότητας ενός τελεστή, μπορείτε πάντα να χρησιμοποιήσετε παρενθέσεις για να καθορίσετε τη σειρά εκτέλεσης των εντολών στον κώδικά σας.