Een string in Python is een reeks karakters. U kunt verschillende bewerkingen op strings uitvoeren met behulp van een reeks ingebouwde methoden. String booleaanse methoden zijn een subset van deze ingebouwde methoden die worden gebruikt om te controleren of de gegeven string aan bepaalde regels voldoet of niet.
In dit artikel leer je hoe je verschillende string-booleaanse methoden in Python 3 kunt gebruiken om een efficiëntere ontwikkelaar te worden.
Controleren of een tekenreeks alleen alfanumerieke tekens bevat
U kunt controleren of de opgegeven tekenreeks alleen uit alfanumerieke tekens bestaat met behulp van de isalnum () methode.
Deze methode keert terug Klopt als alle tekens alfanumeriek zijn. Alfanumerieke tekens zijn (A-Z), (a-z) en (0-9). Als een van de tekens in de tekenreeks niet alfanumeriek is, retourneert deze methode Vals.
Voorbeelden:
str1 = "WelcomeToMUO"
# Deze methode retourneert "True", aangezien alle tekens alfanumeriek zijn
checkstr1 = str1.isalnum ()
afdrukken (checkstr1)
str2 = "Welkom bij MUO"
# Deze methode retourneert "False" aangezien de string 2 spaties heeft die niet alfanumeriek zijn
checkstr2 = str2.isalnum ()
afdrukken (checkstr2)
str3 = "#WelcomeToMUO"
# Deze methode retourneert "False" omdat de tekenreeks een speciaal teken "#" heeft dat niet alfanumeriek is
checkstr3 = str3.isalnum ()
afdrukken (checkstr3)
str4 = "274962472"
# Deze methode retourneert "True", aangezien alle tekens alfanumeriek zijn
checkstr4 = str4.isalnum ()
afdrukken (checkstr4)
str5 = "Welcome2MUO"
# Deze methode retourneert "True", aangezien alle tekens alfanumeriek zijn
checkstr5 = str5.isalnum ()
afdrukken (checkstr5)
Uitgang:
Klopt
Vals
Vals
Klopt
Klopt
Controleren of een tekenreeks alleen uit alfabetische tekens bestaat
U kunt controleren of de opgegeven tekenreeks alleen uit alfabetische tekens bestaat met behulp van de isalpha () methode.
Deze methode keert terug Klopt als alle karakters alfabetisch zijn. Alfabetische tekens zijn (A-Z) en (a-z). Als een van de tekens in de tekenreeks niet alfabetisch is, retourneert deze methode Vals.
Voorbeelden:
str1 = "WelcomeToMUO"
# Deze methode retourneert "True", aangezien alle tekens alfabetisch zijn
checkstr1 = str1.isalpha ()
afdrukken (checkstr1)
str2 = "Welkom bij MUO"
# Deze methode retourneert "False" aangezien de string 2 spaties heeft die niet alfabetisch zijn
checkstr2 = str2.isalpha ()
afdrukken (checkstr2)
str3 = "#WelcomeToMUO"
# Deze methode retourneert "False" omdat de tekenreeks een speciaal teken "#" heeft dat niet alfabetisch is
checkstr3 = str3.isalpha ()
afdrukken (checkstr3)
str4 = "274962472"
# Deze methode retourneert "False" omdat niet alle tekens alfabetisch zijn
checkstr4 = str4.isalpha ()
afdrukken (checkstr4)
str5 = "Welcome2MUO"
# Deze methode retourneert "False" omdat de tekenreeks een cijfer "2" heeft dat niet alfabetisch is
checkstr5 = str5.isalpha ()
afdrukken (checkstr5)
Uitgang:
Klopt
Vals
Vals
Vals
Vals
Controleren of alle tekens in een tekenreeks decimalen, cijfers of cijfers zijn
U kunt controleren of de opgegeven tekenreeks alleen uit decimale tekens, cijfers of numerieke tekens bestaat met behulp van de isdecimaal (), iscijfer (), en isnumeriek () methoden respectievelijk. Alle drie de methoden lijken op elkaar, maar de Python-documentatie merkt het verschil op tussen de drie methoden als:
- isdecimaal (): Decimale tekens zijn tekens die kunnen worden gebruikt om getallen in grondtal 10 te vormen, bijv. U + 0660, ARABISCH-INDIC CIJFER NUL. Formeel is een decimaal teken een teken in de algemene Unicode-categorie "Nd".
- isdigit (): Cijfers bevatten decimale tekens en cijfers die een speciale behandeling vereisen, zoals de compatibele superscriptcijfers. Dit omvat cijfers die niet kunnen worden gebruikt om getallen in basis 10 te vormen, zoals de Kharosthi-getallen. Formeel is een cijfer een teken met de eigenschapswaarde Numeric_Type = Digit of Numeric_Type = Decimal.
- isnumeriek (): Numerieke tekens bevatten cijfertekens en alle tekens die de eigenschap numerieke Unicode-waarde hebben, bijv. U + 2155, VULGAR FRACTIE EEN VIJFDE. Formeel zijn numerieke tekens die met de eigenschapswaarde Numeric_Type = Digit, Numeric_Type = Decimal of Numeric_Type = Numeric.
De relatie tussen de drie methoden kan per definitie worden weergegeven als:
isdecimaal () ⊆ iscijfer () ⊆ isnumeriek ()
Dit betekent dat als een tekenreeks een decimaal is, deze ook een cijfer en een numeriek zal zijn.
Verwant: Tuples maken en gebruiken in Python
Voorbeelden:
# Cijfers
str1 = "8734947"
print ("str1:")
print ("str1.isdecimal ():", str1.isdecimal ())
print ("str1.isdigit ():", str1.isdigit ())
print ("str1.isnumeric ():", str1.isnumeric ())
# Fractionele waarde
str2 = "½"
print ("str2:")
print ("str2.isdecimal ():", str2.isdecimal ())
print ("str2.isdigit ():", str2.isdigit ())
print ("str2.isnumeric ():", str2.isnumeric ())
# Superscript-waarden
str3 = "⁰¹²³⁴⁵⁶⁷⁸⁹"
print ("str3:")
print ("str3.isdecimal ():", str3.isdecimal ())
print ("str3.isdigit ():", str3.isdigit ())
print ("str3.isnumeric ():", str3.isnumeric ())
Uitgang:
str1:
str1.isdecimal (): waar
str1.isdigit (): waar
str1.isnumeric (): waar
str2:
str2.isdecimal (): False
str2.isdigit (): False
str2.isnumeric (): waar
str3:
str3.isdecimal (): False
str3.isdigit (): waar
str3.isnumeric (): waar
Hoe u kunt controleren of een string een geldige identificatie is
U kunt controleren of de opgegeven tekenreeks een geldige identificatie is met behulp van de isidentifier () methode. Deze methode keert terug Klopt als de string een geldige identifier is. Anders keert het terug Vals.
Van een string wordt gezegd dat het een geldige identifier is als deze aan de volgende voorwaarden voldoet:
1. Het bevat alleen alfanumerieke tekens en / of onderstrepingstekens.
2. Het begint niet met een numeriek teken.
3. Het bevat geen spaties.
Verwant: Hoe te gebruiken voor lussen in Python
Voorbeelden:
str1 = "var1"
# Deze methode zal "True" retourneren aangezien de gegeven string een geldige identifier is
checkstr1 = str1.isidentifier ()
afdrukken (checkstr1)
str2 = "var 1"
# Deze methode retourneert "False" omdat de string een witruimte bevat
checkstr2 = str2.isidentifier ()
afdrukken (checkstr2)
str3 = "var1 #"
# Deze methode retourneert "False" omdat de string een speciaal teken "#" heeft
checkstr3 = str3.isidentifier ()
afdrukken (checkstr3)
str4 = "_var1_"
# Deze methode zal "True" retourneren aangezien de gegeven string een geldige identifier is
checkstr4 = str4.isidentifier ()
afdrukken (checkstr4)
str5 = "1var"
# Deze methode retourneert "False", aangezien de string begint met een cijfer "1"
checkstr5 = str5.isidentifier ()
afdrukken (checkstr5)
Uitgang:
Klopt
Vals
Vals
Klopt
Vals
Controleren of alle tekens in een tekenreeks hoofdletters of kleine letters zijn
U kunt controleren of de opgegeven string alleen uit hoofdletters bestaat met behulp van de isboven () methode.
Evenzo kunt u controleren of de opgegeven tekenreeks alleen uit kleine letters bestaat met behulp van de is lager() methode. De methode isupper () retourneert Klopt als alle tekens van de tekenreeks in hoofdletters staan en de methode islower () retourneert Klopt als alle karakters van de string in kleine letters staan.
Voorbeelden:
str1 = "MAKEUSEOF"
print ("str1:")
print ("str1.isupper ():", str1.isupper ())
print ("str1.islower ():", str1.islower ())
str2 = "makeuseof"
print ("str2:")
print ("str2.isupper ():", str2.isupper ())
print ("str2.islower ():", str2.islower ())
str3 = "MakeUseOf"
print ("str3:")
print ("str3.isupper ():", str3.isupper ())
print ("str3.islower ():", str3.islower ())
Uitgang:
str1:
str1.isupper (): waar
str1.islower (): False
str2:
str2.isupper (): False
str2.islower (): waar
str3:
str3.isupper (): False
str3.islower (): False
Controleren of alle tekens in een tekenreeks witruimte zijn
U kunt controleren of de opgegeven tekenreeks alleen uit spaties bestaat met behulp van de isspace () methode.
Deze methode keert terug Klopt als alle tekens witruimte zijn. Als een van de tekens in de tekenreeks geen witruimte is, retourneert deze methode Vals.
Voorbeelden:
str1 = ""
# Deze methode retourneert "True" omdat de opgegeven string alleen witruimte bevat
checkstr1 = str1.isspace ()
afdrukken (checkstr1)
str2 = "MUO"
# Deze methode retourneert "False" omdat de string andere tekens bevat dan witruimte
checkstr2 = str2.isspace ()
afdrukken (checkstr2)
str3 = "-"
# Deze methode retourneert "False" omdat de string een ander teken dan witruimte bevat
checkstr3 = str3.isspace ()
afdrukken (checkstr3)
Uitgang:
Klopt
Vals
Vals
Hoe u kunt controleren of de tekst voldoet aan de stijlregels voor titels
U kunt controleren of de gegeven tekst de regels van een titel volgt met de istitle () methode.
Een tekst volgt de titelregels als alle woorden in de tekst beginnen met een hoofdletter en de rest van de woorden kleine letters zijn. Als de opgegeven tekst deze regel volgt, retourneert de methode istitle () Kloptanders keert het terug Vals.
Voorbeelden:
str1 = "Welkom bij Muo"
# Deze methode zal "True" retourneren aangezien de gegeven string de regels van een titel volgt
checkstr1 = str1.istitle ()
afdrukken (checkstr1)
str2 = "Welkom bij Muo"
# Deze methode retourneert "False" aangezien het tweede woord ("to") niet begint met een hoofdletter
checkstr2 = str2.istitle ()
afdrukken (checkstr2)
str3 = "welkom bij muo"
# Deze methode retourneert "False", aangezien alle woorden beginnen met een kleine letter
checkstr3 = str3.istitle ()
afdrukken (checkstr3)
Uitgang:
Klopt
Vals
Vals
Maak programmeren leuk met strings
Strings zijn erg handig bij het communiceren van informatie van het programma naar zijn gebruikers. Het gebruik van booleaanse validatie is echter niet de enige manier om met Python-strings te spelen.
U kunt saaie tekst omzetten in interessante tekst door strings te manipuleren. Wees creatief en maak programmeren leuk!
Het gebruik en manipuleren van tekenreeksen in Python kan moeilijk lijken, maar het is bedrieglijk eenvoudig.
Lees Volgende
- Programmeren
- Python
- Zelfstudies over codering
Yuvraj is een student informatica aan de Universiteit van Delhi, India. Hij is gepassioneerd door Full Stack Web Development. Als hij niet aan het schrijven is, onderzoekt hij de diepte van verschillende technologieën.
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!
Nog een stap…!
Bevestig uw e-mailadres in de e-mail die we u zojuist hebben gestuurd.