Būla ir svarīgs programmēšanas jēdziens. Šajā rakstā, izmantojot EU.LuckyTemplates, iemācīsimies izmantot Būla valodu, lai apstrādātu virknes programmā Python !

Python virkne ir rakstzīmju secība. Ar virknēm varat veikt daudzas dažādas darbības, izmantojot pieejamo metožu kopu. Virkņu Būla tipi ir šo metožu apakškopa, ko izmanto, lai pārbaudītu, vai dotā virkne atbilst noteikumiem.
Tagad iemācīsimies izmantot dažas Būla metodes programmā Python 3, lai efektīvāk apstrādātu virknes.
Kā pārbaudīt virknes, izmantojot Būla valodu Python
Kā pārbaudīt, vai virknē ir tikai burtciparu rakstzīmes
Varat pārbaudīt, vai dotajā virknē ir tikai burtciparu rakstzīmes, izmantojot metodi isalnum() .
Šī metode atgriež vērtību True , ja visas rakstzīmes ir burtciparu, tostarp (AZ), (az) un (0-9). Ja kāda rakstzīme virknē nav iepriekš minētā rakstzīme, šī metode atgriež False .
Piemēram:
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)
Rezultāts:
True
False
False
True
True
Kā pārbaudīt, vai katra virkne satur tikai burtiskas rakstzīmes
Varat pārbaudīt, vai dotajā virknē ir tikai burti vai nav, izmantojot metodi isalpha() . Šī metode atgriež vērtību True, ja visas rakstzīmes ir burti no AZ un az. Ja virknē kādas rakstzīmes nav burtiskas, šī metode atgriež False .
Piemēram:
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)
Rezultāts:
True
False
False
False
False
Kā pārbaudīt, vai visas virknes rakstzīmes ir decimāldaļas, cipari vai cipari
Varat pārbaudīt, vai dotā virkne sastāv tikai no decimālzīmēm, ciparu vai ciparu rakstzīmēm, izmantojot attiecīgi metodes isdecimal(), isdigit() un isnumeric(). Visas trīs metodes ir līdzīgas, taču tām ir šādas galvenās atšķirības:
- isdecimal() : Decimālzīmes var izmantot, lai veidotu skaitļus 10. bāzē, piemēram: U+0660, ARĀBU-INDIJAS CIPARU NULLE. Formāli decimālzīme ir rakstzīme formā Unikoda vispārējā kategorija “Nd”.
- isdigit() : cipari ietver decimālzīmes, un tiem ir nepieciešama īpaša apstrāde, piemēram, augšindekss, lai nodrošinātu saderību. Tas ietver ciparus, ko nevar izmantot, lai veidotu skaitļus 10. bāzē, piemēram, Kharosthi skaitļus. Formāli cipars ir rakstzīme ar atribūta vērtību Numeric_Type=Digit vai Numeric_Type=Decimal.
- isnumeric() : ciparu rakstzīmes ietver burtciparu rakstzīmes un visas rakstzīmes ar unikoda skaitliskās vērtības atribūtu, piemēram: U+2155, VULGĀRĀ DAĻA VIENA PIEKTĀ. Formāli ciparu rakstzīmes ir tās, kurām ir atribūta vērtība Numeric_Type = cipars, Numeric_Type = decimāls vai Numeric_Type = skaitlis.
Pēc definīcijas saistību starp šīm trim metodēm var attēlot šādi:
isdecimal() ⊆ isdigit() ⊆ isnumeric()
Tas nozīmē, ka, ja virkne ir decimālskaitlis, tā var būt arī cipari un cipari.
Piemēram:
# 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())
Rezultāts:
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
Kā pārbaudīt, vai virkne ir derīgs identifikators
Varat pārbaudīt, vai dotā virkne ir derīgs identifikators, izmantojot metodi isidentifier(). Šī metode atgriež vērtību True , ja virkne ir derīgs identifikators. Pretējā gadījumā tas atgriezīsies False .
Katra virkne tiek uzskatīta par derīgu identifikatoru, ja tā atbilst šādiem nosacījumiem:
- Tajā ir tikai burtciparu rakstzīmes vai pasvītras.
- Tas nesākas ar ciparu rakstzīmi.
- Tas nesatur atstarpes.
Piemēram:
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)
Rezultāts:
True
False
False
True
False
Virknes ir ļoti noderīgas informācijas nodošanai no programmas lietotājam. Būla validācijas izmantošana nav vienīgais veids, kā rīkoties ar Python virknēm, taču tā ir ārkārtīgi efektīva un diezgan viegli lietojama iesācējiem.