El booleà és un concepte important en programació. En aquest article, aprenem amb EU.LuckyTemplates com utilitzar Boolean per processar cadenes en Python !

Una cadena en Python és una seqüència de caràcters. Podeu realitzar moltes accions diferents sobre cadenes utilitzant un conjunt de mètodes disponibles. Els tipus booleans de cadena són un subconjunt d'aquests mètodes, que s'utilitzen per comprovar si la cadena donada s'ajusta a les regles o no.
Ara aprenem a utilitzar alguns mètodes booleans a Python 3 per gestionar les cadenes de manera més eficient.
Com validar cadenes utilitzant Boolean a Python
Com comprovar que una cadena només conté caràcters alfanumèrics
Podeu comprovar si la cadena donada només conté caràcters alfanumèrics mitjançant el mètode isalnum() .
Aquest mètode retorna True si tots els caràcters són alfanumèrics, inclosos (AZ), (az) i (0-9). Si algun caràcter de la cadena no és el caràcter anterior, aquest mètode retorna False .
Per exemple:
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)
Resultat:
True
False
False
True
True
Com comprovar que cada cadena només conté caràcters literals
Podeu comprovar si la cadena donada només conté lletres o no utilitzant el mètode isalpha() . Aquest mètode retorna True si tots els caràcters són lletres de AZ i az. Si algun caràcter de la cadena no és literal, aquest mètode retorna False .
Per exemple:
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)
Resultat:
True
False
False
False
False
Com comprovar si tots els caràcters d'una cadena són decimals, dígits o números
Podeu comprovar si la cadena donada consta només de caràcters decimals, numèrics o de dígits mitjançant els mètodes isdecimal(), isdigit() i isnumeric() respectivament. Els tres mètodes són similars, però tenen les següents diferències clau:
- isdecimal() : els caràcters decimals es poden utilitzar per formar nombres en base 10, per exemple: U+0660, DIGIT ZERO ÀRAB-INDIC. Formalment, un caràcter decimal és un caràcter en la forma Unicode General Categoria "Nd".
- isdigit() : els dígits inclouen caràcters decimals i requereixen un tractament especial, com ara superíndexs per a la compatibilitat. Això inclou els dígits que no es poden utilitzar per formar números en base 10, com ara els nombres Kharosthi. Formalment, un dígit és un caràcter amb el valor d'atribut Numeric_Type=Dígit o Numeric_Type=Decimal.
- isnumeric() : els caràcters numèrics inclouen caràcters alfanumèrics i tots els caràcters amb l'atribut de valor numèric Unicode, per exemple: U+2155, FRACCIÓ VULGAR UNA CINTA. Formalment, els caràcters numèrics són aquells amb el valor d'atribut Numeric_Type = Digit, Numeric_Type = Decimal o Numeric_Type = Numeric.
Per definició, la relació entre aquests tres mètodes es pot presentar de la següent manera:
isdecimal() ⊆ isdigit() ⊆ isnumeric()
Això vol dir que si una cadena és un nombre decimal, també pot ser números i dígits.
Per exemple:
# 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())
Resultat:
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
Com comprovar si una cadena és un identificador vàlid
Podeu comprovar si la cadena donada és un identificador vàlid mitjançant el mètode isidentifier(). Aquest mètode retorna True si la cadena és un identificador vàlid. En cas contrari, tornarà False .
Cada cadena es considera un identificador vàlid si compleix les condicions següents:
- Només conté caràcters alfanumèrics o guions baixos.
- No comença amb un caràcter numèric.
- No conté espais.
Per exemple:
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)
Resultat:
True
False
False
True
False
Les cadenes són extremadament útils per transmetre informació del programa a l'usuari. L'ús de la validació booleana no és l'única manera de gestionar les cadenes de Python, però és extremadament eficaç i bastant fàcil d'utilitzar per a principiants.