Οι τελεστές σύγκρισης in και not in στον ελέγχουν εάν
μια τιμή εμφανίζεται (ή δεν εμφανίζεται) σε μια ακολουθία.
Οι τελεστές is και is not συγκρίνουν αν δύο αντικείμενα
είναι πραγματικά το ίδιο αντικείμενο. Αυτό αφορά μόνο
μεταβλητά αντικείμενα όπως οι λίστες. Όλοι οι τελεστές
σύγκρισης έχουν την ίδια προτεραιότητα, η οποία είναι
χαμηλότερη από εκείνη όλων των αριθμητικών φορέων.
Οι συγκρίσεις μπορούν να συνδυαστούν αλυσιδωτά. Για
παράδειγμα, το a < b ==c εξετάζει αν το a είναι μικρότερο
από b και επιπλέον, αν b ισούται με c.
Οι συγκρίσεις μπορούν να συνδυαστούν με τη χρήση
λογικών τελεστών AND και OR, και το αποτέλεσμα της σύγκρισης
(ή οποιασδήποτε άλλης λογικής έκφρασης) μπορεί να εξαλειφθεί
με NOT. Αυτά έχουν χαμηλότερες προτεραιότητες από τους
τελεστές σύγκρισης. Μεταξύ τους, το NOT έχει την υψηλότερη
προτεραιότητα και τo OR έχει τη χαμηλότερη, έτσι ώστε Α AND
NOT Β OR C να ισοδυναμεί με (Α AND (NOT Β)) OR C. Όπως
πάντα, μπορούν να χρησιμοποιηθούν παρενθέσεις για να
εκφράσουν την επιθυμητή σύνθεση.
Τα επιχειρήματά των λογικών τελεστών αξιολογούνται από
αριστερά προς τα δεξιά, και η αξιολόγηση σταματά αμέσως
μόλις καθοριστεί το αποτέλεσμα. Για παράδειγμα, εάν το Α και
C είναι αληθής, αλλά Β ψευδής, Α AND Β AND C δεν αξιολογεί
την έκφραση C. Όταν χρησιμοποιείται ως μια γενική αξία και
όχι ως λογική, η επιστρεφόμενη τιμή του ενός φορέα
βραχυκυκλώματος είναι το τελευταίο.
Είναι δυνατόν να ορίσετε το αποτέλεσμα μιας σύγκρισης
ή άλλων λογικών εκφράσεων σε μια μεταβλητή. Για παράδειγμα,
>>>
string1, string2, string3
=
''
,
'Trondheim'
,
'Hammer
Dance'
>>>
non_null
=
string1
or
string2
or
string3
>>>
non_null
'Trondheim'
Σημειώστε ότι στην Python, σε αντίθεση με τη C, η
εκχώρηση δεν μπορεί να συμβεί μέσα σε εκφράσεις. Στην C οι
προγραμματιστές μπορούν να γκρινιάζουν γι 'αυτό, αλλά
- A Mini greek notebook for Learning Python Programming
47