Περισσότερα
Πώς να ελέγξετε αν η συμβολοσειρά είναι κενή;
Έχει η Python κάτι σαν μια κενή μεταβλητή συμβολοσειράς όπου μπορείτε να κάνετε:
if myString == string.empty:
Ανεξάρτητα από αυτό, ποιος είναι ο πιο κομψός τρόπος για να ελέγξετε για κενές τιμές συμβολοσειράς; Βρίσκω ότι ο σκληρός προγραμματισμός ""
κάθε φορά για τον έλεγχο μιας κενής συμβολοσειράς δεν είναι τόσο καλός.
1271
3
Οι κενές συμβολοσειρές είναι "falsy" που σημαίνει ότι θεωρούνται ψευδείς σε ένα πλαίσιο Boolean, οπότε μπορείτε να κάνετε αυτό:
Αυτός είναι ο προτιμώμενος τρόπος αν γνωρίζετε ότι η μεταβλητή σας είναι μια συμβολοσειρά. Αν η μεταβλητή σας θα μπορούσε να είναι και κάποιος άλλος τύπος τότε θα πρέπει να χρησιμοποιήσετε
myString == ""
. Ανατρέξτε στην τεκμηρίωση Truth Value Testing για άλλες τιμές που είναι ψευδείς σε περιβάλλοντα Boolean.Από το PEP 8, στην ενότητα "Programming Recommendations":
Επομένως, θα πρέπει να χρησιμοποιήσετε:
ή:
Απλά για να διευκρινίσουμε, οι ακολουθίες αξιολογούνται σε
False
ήTrue
σε ένα Boolean πλαίσιο αν είναι κενές ή όχι. Δεν είναι όχι ίσες μεFalse
ήTrue
.Ο πιο κομψός τρόπος θα ήταν πιθανώς να ελέγχετε απλά αν είναι αληθές ή ψεύτικο, π.χ.:
Ωστόσο, μπορεί να θέλετε να αφαιρέσετε το λευκό διάστημα επειδή:
Ωστόσο, μάλλον θα πρέπει να είστε λίγο πιο σαφείς σε αυτό, εκτός αν γνωρίζετε με βεβαιότητα ότι αυτή η συμβολοσειρά έχει περάσει κάποιο είδος επικύρωσης και είναι μια συμβολοσειρά που μπορεί να ελεγχθεί με αυτόν τον τρόπο.