Το Boolean είναι μια σημαντική έννοια στον προγραμματισμό. Σε αυτό το άρθρο, ας μάθουμε με το EU.LuckyTemplates πώς να χρησιμοποιούμε τον Boolean για την επεξεργασία συμβολοσειρών στην Python !
Μια συμβολοσειρά στην Python είναι μια ακολουθία χαρακτήρων. Μπορείτε να εκτελέσετε πολλές διαφορετικές ενέργειες σε συμβολοσειρές χρησιμοποιώντας ένα σύνολο διαθέσιμων μεθόδων. Οι τύποι δυαδικών συμβολοσειρών είναι ένα υποσύνολο αυτών των μεθόδων, οι οποίες χρησιμοποιούνται για να ελέγξουν εάν η δεδομένη συμβολοσειρά συμμορφώνεται με τους κανόνες ή όχι.
Τώρα ας μάθουμε πώς να χρησιμοποιούμε ορισμένες μεθόδους Boolean στην Python 3 για να χειριζόμαστε πιο αποτελεσματικά τις συμβολοσειρές.
Πώς να επικυρώσετε συμβολοσειρές χρησιμοποιώντας Boolean στην Python
Πώς να ελέγξετε μια συμβολοσειρά περιέχει μόνο αλφαριθμητικούς χαρακτήρες
Μπορείτε να ελέγξετε εάν η δεδομένη συμβολοσειρά περιέχει μόνο αλφαριθμητικούς χαρακτήρες χρησιμοποιώντας τη μέθοδο isalnum() .
Αυτή η μέθοδος επιστρέφει True εάν όλοι οι χαρακτήρες είναι αλφαριθμητικοί, συμπεριλαμβανομένων των (AZ), (az) και (0-9). Εάν κάποιος χαρακτήρας στη συμβολοσειρά δεν είναι ο παραπάνω χαρακτήρας, αυτή η μέθοδος επιστρέφει False .
Για παράδειγμα:
str1 = "WelcomeToMUO"
# This method will return "True" as all the characters are alphanumeric
checkstr1 = str1.isalnum()
print(checkstr1)
str2 = "Welcome To MUO"
# This method will return "False" as the string have 2 whitespaces which are not alphanumeric
checkstr2 = str2.isalnum()
print(checkstr2)
str3 = "#WelcomeToMUO"
# This method will return "False" as the string have a special character "#" which is not alphanumeric
checkstr3 = str3.isalnum()
print(checkstr3)
str4 = "274962472"
# This method will return "True" as all the characters are alphanumeric
checkstr4 = str4.isalnum()
print(checkstr4)
str5 = "Welcome2MUO"
# This method will return "True" as all the characters are alphanumeric
checkstr5 = str5.isalnum()
print(checkstr5)
Αποτέλεσμα:
True
False
False
True
True
Πώς να ελέγξετε κάθε συμβολοσειρά περιέχει μόνο κυριολεκτικούς χαρακτήρες
Μπορείτε να ελέγξετε εάν η δεδομένη συμβολοσειρά περιέχει μόνο γράμματα ή όχι χρησιμοποιώντας τη μέθοδο isalpha() . Αυτή η μέθοδος επιστρέφει True εάν όλοι οι χαρακτήρες είναι γράμματα από AZ και az. Εάν κάποιοι χαρακτήρες στη συμβολοσειρά δεν είναι κυριολεκτικοί, αυτή η μέθοδος επιστρέφει False .
Για παράδειγμα:
str1 = "WelcomeToMUO"
# This method will return "True" as all the characters are alphabetic
checkstr1 = str1.isalpha()
print(checkstr1)
str2 = "Welcome To MUO"
# This method will return "False" as the string have 2 whitespaces which are not alphabetic
checkstr2 = str2.isalpha()
print(checkstr2)
str3 = "#WelcomeToMUO"
# This method will return "False" as the string have a special character "#" which is not alphabetic
checkstr3 = str3.isalpha()
print(checkstr3)
str4 = "274962472"
# This method will return "False" as all the characters are not alphabetic
checkstr4 = str4.isalpha()
print(checkstr4)
str5 = "Welcome2MUO"
# This method will return "False" as the string has a digit "2" which is not alphabetic
checkstr5 = str5.isalpha()
print(checkstr5)
Αποτέλεσμα:
True
False
False
False
False
Πώς να ελέγξετε εάν όλοι οι χαρακτήρες σε μια συμβολοσειρά είναι δεκαδικοί, ψηφία ή αριθμοί
Μπορείτε να ελέγξετε εάν η δεδομένη συμβολοσειρά αποτελείται μόνο από δεκαδικούς, αριθμούς ή ψηφιακούς χαρακτήρες χρησιμοποιώντας τις μεθόδους isdecimal(), isdigit() και isnumeric() αντίστοιχα. Και οι τρεις μέθοδοι είναι παρόμοιες, αλλά έχουν τις ακόλουθες βασικές διαφορές:
- isdecimal() : Οι δεκαδικοί χαρακτήρες μπορούν να χρησιμοποιηθούν για να σχηματίσουν αριθμούς στη βάση 10, για παράδειγμα: U+0660, ARABIC-INDIC DIGIT ZERO. Τυπικά, ένας δεκαδικός χαρακτήρας είναι ένας χαρακτήρας με τη μορφή Unicode General Category "Nd".
- isdigit() : Τα ψηφία περιλαμβάνουν δεκαδικούς χαρακτήρες και απαιτούν ειδικό χειρισμό, όπως εκθέτες για συμβατότητα. Αυτό περιλαμβάνει ψηφία που δεν μπορούν να χρησιμοποιηθούν για το σχηματισμό αριθμών στη βάση 10, όπως οι αριθμοί Kharosthi. Τυπικά, ένα ψηφίο είναι ένας χαρακτήρας με την τιμή χαρακτηριστικού Numeric_Type=Digit ή Numeric_Type=Decimal.
- isnumeric() : Οι αριθμητικοί χαρακτήρες περιλαμβάνουν αλφαριθμητικούς χαρακτήρες και όλους τους χαρακτήρες με το χαρακτηριστικό Unicode αριθμητική τιμή, για παράδειγμα: U+2155, VULGAR FRACTION ONE FFTH. Τυπικά, αριθμητικοί χαρακτήρες είναι αυτοί με την τιμή χαρακτηριστικού Numeric_Type = Digit, Numeric_Type = Decimal ή Numeric_Type = Numeric.
Εξ ορισμού, η σχέση μεταξύ αυτών των τριών μεθόδων μπορεί να παρουσιαστεί ως εξής:
isdecimal() ⊆ isdigit() ⊆ isnumeric()
Αυτό σημαίνει ότι εάν μια συμβολοσειρά είναι δεκαδικός αριθμός, τότε μπορεί επίσης να είναι αριθμοί και ψηφία.
Για παράδειγμα:
# Digits
str1 = "8734947"
print("str1:")
print("str1.isdecimal() : ",str1.isdecimal())
print("str1.isdigit() : ",str1.isdigit())
print("str1.isnumeric() : ",str1.isnumeric())
# Fractional Value
str2 = "½"
print("str2:")
print("str2.isdecimal() : ",str2.isdecimal())
print("str2.isdigit() : ",str2.isdigit())
print("str2.isnumeric() : ",str2.isnumeric())
# Superscript Values
str3 = "⁰¹²³⁴⁵⁶⁷⁸⁹"
print("str3:")
print("str3.isdecimal() : ",str3.isdecimal())
print("str3.isdigit() : ",str3.isdigit())
print("str3.isnumeric() : ",str3.isnumeric())
Αποτέλεσμα:
str1:
str1.isdecimal() : True
str1.isdigit() : True
str1.isnumeric() : True
str2:
str2.isdecimal() : False
str2.isdigit() : False
str2.isnumeric() : True
str3:
str3.isdecimal() : False
str3.isdigit() : True
str3.isnumeric() : True
Πώς να ελέγξετε εάν μια συμβολοσειρά είναι έγκυρο αναγνωριστικό
Μπορείτε να ελέγξετε εάν η δεδομένη συμβολοσειρά είναι έγκυρο αναγνωριστικό χρησιμοποιώντας τη μέθοδο isidentifier(). Αυτή η μέθοδος επιστρέφει True εάν η συμβολοσειρά είναι έγκυρο αναγνωριστικό. Διαφορετικά, θα επιστρέψει False .
Κάθε συμβολοσειρά θεωρείται έγκυρο αναγνωριστικό εάν πληροί τις ακόλουθες προϋποθέσεις:
- Περιέχει μόνο αλφαριθμητικούς χαρακτήρες ή κάτω παύλες.
- Δεν ξεκινά με αριθμητικό χαρακτήρα.
- Δεν περιέχει κενά.
Για παράδειγμα:
str1 = "var1"
# This method will return "True" as the given string is a valid identifier
checkstr1 = str1.isidentifier()
print(checkstr1)
str2 = "var 1"
# This method will return "False" as the string contains a whitespace
checkstr2 = str2.isidentifier()
print(checkstr2)
str3 = "var1#"
# This method will return "False" as the string have a special character "#"
checkstr3 = str3.isidentifier()
print(checkstr3)
str4 = "_var1_"
# This method will return "True" as the given string is a valid identifier
checkstr4 = str4.isidentifier()
print(checkstr4)
str5 = "1var"
# This method will return "False" as the string starts with a digit "1"
checkstr5 = str5.isidentifier()
print(checkstr5)
Αποτέλεσμα:
True
False
False
True
False
Οι συμβολοσειρές είναι εξαιρετικά χρήσιμες για τη μεταφορά πληροφοριών από το πρόγραμμα στον χρήστη. Η χρήση της επικύρωσης boolean δεν είναι ο μόνος τρόπος χειρισμού των συμβολοσειρών Python, αλλά είναι εξαιρετικά αποτελεσματικός και αρκετά εύκολος στη χρήση για αρχάριους.