Τελεστές (Operators)
Οι τελεστές είναι σύμβολα τα οποία εκφράζουν κάποια συγκεκριμένη λειτουργία (πράξη) σε ένα ή περισσότερα αντικείμενα. Για παράδειγμα, ο τελεστής +
χρησιμοποιείται για την πρόσθεση δύο αριθμών.
Ανάλογα με τα αντικείμενα στα οποία χρησιμοποιούνται οι τελεστές, χωρίζονται σε κατηγορίες. Έτσι έχουμε.
Αριθμητικοί τελεστές
Πρόσθεση (+)
Προσθέτει δύο αριθμούς. Ο τελεστής της πρόσθεσης χρησιμοποιείται και για την πρόσθεση (συννένωση) δύο κειμένων ή συμβολοσειρών. Όταν ένας αριθμός είναι σε εισαγωγικά τότε αυτός θεωρείται ως κείμενο.
Δείτε τα πιο κάτω παραδείγματα με τα αντίστοιχα αποτελέσματα:
5 + 3 => 8 "5" + "3" => '53' (και όχι 8) "Γειά σου " + "Κώστα" => Γειά σου Κώστα
Αφαίρεση (-)
Αφαιρεί δύο αριθμούς. Ο τελεστής της αφαίρεσης χρησιμοποιείται αποκλειστικά για αριθμητικές πράξεις.
18-5 => 13
Πολλαπλασιασμός (*)
Πολλαπλασιάζει δύο αριθμούς. Χρησιμοποιείται αποκλειστικά με αριθμούς.
10*4 => 40
Διαίρεση (/)
Διαιρεί δύο αριθμούς. Το αποτέλεσμα μπορεί να είναι ακέραιος ή δεκαδικός.
Modulo (%)
Διαιρεί δύο αριθμούς και δίνει σαν αποτέλεσμα το υπόλοιπο της διαίρεσης. Παράδειγμα:
10%3 => 1
Μείον(-)
Μετατρέπει έναν θετικό αριθμό σε αρνητικό ή έναν αρνητικό σε θετικό.
Εκθέτης
Υπολογίζει δυνάμεις (xy)
5**3 =>125
Ακέραιη διαίρεση ή Floor division (//)
Στρογγυλοποιεί το αποτέλεσμα στον χαμηλότερο ακέραιο.
x = 15 y = 4 print(x // y) # 3 print(x / y) # 3.75
Τελεστές εκχώρησης τιμής (Assignment Operators)
Τελεστής Παράδειγμα Ισοδύναμο ------------------------------------------ = x = 5 x = 5 += x += 3 x = x + 3 += x += 3 x = x + 3 *= x *= 3 x = x * 3 /= x /= 3 x = x / 3 /= x /= 3 x = x / 3 //= x //= 3 x = x // 3 **= x **= 3 x = x ** 3 &= x &= 3 x = x & 3 |= x |= 3 x = x | 3 ^= x ^= 3 x = x ^ 3 >>= x >>= 3 x = x >> 3 <<= x <<= 3 x = x << 3 := print(x := 3) x = 3; print(x)
print(x := 3) # 3 x = 5 x //= 3 print(x) # 1 x = 5 x += 3 print(x) # 8
Συγκριτικοί τελεστές
Οι τελεστές αυτοί χρησιμοποιούνται για την σύγκριση δύο τιμών. Συνδυάζονται συνήθως με την πρόταση if
. Όταν η σύγκριση είναι αληθής τότε επιστρέφεται η τιμή True
, διαφορετικά επιστρέφεται η τιμή False
(ψευδής).
Μεγαλύτερο του (>)
Συγκρίνει αν μια τιμή είναι μεγαλύτερη μίας άλλης. Παράδειγμα: if(15>3)
.
Μικρότερο του (<)
Συγκρίνει αν μια τιμή είναι μικρότερη μίας άλλης. Παράδειγμα: if(10<20)
.
Μεγαλύτερο ή ίσο του (>=)
Συγκρίνει αν μια τιμή είναι μεγαλύτερη ή ίση μίας άλλης. Παράδειγμα: if(15>=3)
.
Μικρότερο ή ίσο του (<=)
Συγκρίνει αν μια τιμή είναι μικρότερη ή ίση μίας άλλης. Παράδειγμα: if(10<=20)
.
Ίσον του(==)
Συγκρίνει αν μια τιμή είναι ίση μίας άλλης. Παράδειγμα: if(10==10)
.
Όχι ίσον του(!=)
Συγκρίνει αν μια τιμή δεν είναι ίση μίας άλλης. Παράδειγμα: if(10!=33)
.
Λογικοί τελεστές
Οι λογικοί τελεστές χρησιμοποιούνται για τη σύγκριση δύο λογικών προτάσεων. Το αποτέλεσμα μπορεί να είναι True
ή False
.
Λογικό ΚΑΙ (and)
Όταν και οι δύο προτάσεις είναι True
το αποτέλεσμα είναι True
, διαφορετικά το αποτέλεσμα είναι False
. Παράδειγμα: if(x>0 and x<10)
Λογικό Ή (or)
Όταν τουλάχιστον μία από τις δύο προτάσεις είναι true
το αποτέλεσμα είναι True
, διαφορετικά το αποτέλεσμα είναι False
.
Παράδειγμα: if(x==0 or x==2)
Λογικό ΌΧΙ (not)
Εφαρμόζεται σε μία πρόταση και αλλάζει τη λογική τιμή της. Όταν η πρόταση είναι True
γίνεται False
και όταν είναι False
γίνεται True
. Παράδειγμα: if(not(x==0))
Τελεστές ταυτότητας
is
Επιστρέφει True
αν οι μεταβλητές ταυτίζονται με το ίδιο αντικείμενο.
x = 123 y = x print(y is x) # True
is not
Επιστρέφει False
αν οι μεταβλητές δεν ταυτίζονται με το ίδιο αντικείμενο.
x = 123 y = 345 print(y is x) # False
Τελεστές ιδιότητας μέλους (Membership Operators)
in
Επιστρέφει True αν στη σειρά (sequence) υπάρχει το αντικείμενο.
x in y
x = ["apple", "banana"] print("banana" in x) # True
not in
Επιστρέφει True αν στη σειρά (sequence) δεν υπάρχει το αντικείμενο.
x not in y
x = ["apple", "banana"] print("orange" not in x) # True
Ternary operator (Τριαδικός τελεστής)
Χρησιμοποιείται ως σύντομο if...else
a = 10 b = 20 min = "a is minimum" if a < b else "b is minimum"
Το παραπάνω παράδειγμα είναι ισοδύναμο με:
if a < b: min = "a is minimum" else: min = "b is minimum"
a = 10 b = 20 # σε συνδυασμό με print print(a,"is minimum") if (a < b) else print(b,"is minimum")
Το παραπάνω παράδειγμα είναι ισοδύναμο με:
if a < b: print(a, "is minimum") else: print(b, "is minimum")
# σε συνδυασμό με List a = 10 b = 20 m = ["b is minimum", "a is minimum"] [a < b] print(m) # a is minimum
ή
# σε συνδυασμό με List fruit = "mango" m = ["there is no mango", "there is mango"] [fruit == "mango"] print(m) # there is mango
# σε συνδυασμό με Tuple ή Set a = 10 b = 20 m = ("b is minimum", "a is minimum") [a < b] print(m) # a is minimum
ή
# σε συνδυασμό με Tuple ή Set fruit = "mango" m = ("there is no mango", "there is mango") [fruit == "mango"] print(m) # there is mango
# σε συνδυασμό με Dictionary a, b = 10, 20 m = {True: "a is minimum", False: "b is minimum"} [a < b] print(m) # a is minimum
ή
# σε συνδυασμό με Dictionary fruit = "mango" m = {True: "there is mango", False: "there is no mango"} [fruit == "mango"] print(m) # there is mango
Bitwise Operators
Αφορά πράξεις ανάμεσα σε bits
Τελεστής | Παράδειγμα | Περιγραφή |
---|---|---|
& | 1 & 1 #1 | Κάνει AND δύο bit |
| | 0 | 0 #0 | Κάνει OR δύο bit |
^ | 1 ^ 1 #0, 0 ^ 0 #0 | Κάνει XOR δύο bit |
~ | ~1 #0, ~0 #1 | Κάνει NOT ένα bit |
<< |
x=1 x<<2 print(x) #4 |
Εισάγει μηδενικά από τα δεξιά |
>> |
x=4 x>>2 print(x) #1 |
Εισάγει μηδενικά από τα αριστερά |