Niz v Pythonu je zaporedje znakov. Z nizom vgrajenih metod lahko izvajate različne operacije na nizih. Nizovne logične metode so podmnožica teh vgrajenih metod, ki se uporabljajo za preverjanje, ali dani niz sledi določenim pravilom ali ne.

V tem članku boste izvedeli, kako uporabljati več različnih nizovnih logičnih metod v Pythonu 3, da postanete učinkovitejši razvijalec.

Kako preveriti, ali niz vsebuje samo alfanumerične znake

S pomočjo znaka lahko preverite, ali dani niz vsebuje samo alfanumerične znake isalnum () metoda.

Ta metoda se vrne Prav če so vsi znaki alfanumerični. Alfanumerični znaki so (A-Z), (a-z) in (0-9). Če kateri od znakov v nizu ni alfanumerično, se ta metoda vrne Lažno.

Primeri:

str1 = "WelcomeToMUO"
# Ta metoda bo vrnila "True", saj so vsi znaki alfanumerični
checkstr1 = str1.isalnum ()
natisni (checkstr1)
str2 = "Dobrodošli v MUO"
# Ta metoda bo vrnila "False", saj ima niz dva presledka, ki nista alfanumerična
checkstr2 = str2.isalnum ()
tiskanje (checkstr2)
str3 = "#DobrodošliMUO"
instagram viewer

# Ta metoda bo vrnila "False", saj ima niz poseben znak "#", ki ni alfanumeričen
checkstr3 = str3.isalnum ()
tiskanje (checkstr3)
str4 = "274962472"
# Ta metoda bo vrnila "True", saj so vsi znaki alfanumerični
checkstr4 = str4.isalnum ()
tiskanje (checkstr4)
str5 = "Dobrodošli2MUO"
# Ta metoda bo vrnila "True", saj so vsi znaki alfanumerični
checkstr5 = str5.isalnum ()
tiskanje (checkstr5)

Izhod:

Prav
Lažno
Lažno
Prav
Prav

Kako preveriti, ali niz vsebuje samo abecedne znake

Lahko preverite, ali dani niz vsebuje samo abecedne znake, z uporabo isalpha () metoda.

Ta metoda se vrne Prav če so vsi znaki abecedni. Abecedna znaka sta (A-Z) in (a-z). Če kateri od znakov v nizu ni abecedni, se ta metoda vrne Lažno.

Primeri:

str1 = "WelcomeToMUO"
# Ta metoda bo vrnila "True", saj so vsi znaki po abecedi
checkstr1 = str1.isalpha ()
natisni (checkstr1)
str2 = "Dobrodošli v MUO"
# Ta metoda bo vrnila "False", saj ima niz dva presledka, ki nista abecedna
checkstr2 = str2.isalpha ()
tiskanje (checkstr2)
str3 = "#DobrodošliMUO"
# Ta metoda bo vrnila "False", saj ima niz poseben znak "#", ki ni abecedni
checkstr3 = str3.isalpha ()
tiskanje (checkstr3)
str4 = "274962472"
# Ta metoda bo vrnila "False", ker vsi znaki niso abecedni
checkstr4 = str4.isalpha ()
tiskanje (checkstr4)
str5 = "Dobrodošli2MUO"
# Ta metoda bo vrnila "False", saj ima niz številko "2", ki ni abecedna
checkstr5 = str5.isalpha ()
tiskanje (checkstr5)

Izhod:

Prav
Lažno
Lažno
Lažno
Lažno

Kako preveriti, ali so vsi znaki v nizu decimalna mesta, številke ali številke

S pomočjo lahko preverite, ali je dani niz sestavljen samo iz decimalnih znakov, števk ali številskih znakov isdecimal (), isdigit (), in številčno () metode. Vse tri metode so videti podobne, toda Python dokumentacija ugotavlja razliko med tremi metodami kot:

  • isdecimal (): Decimalni znaki so tisti, ki jih lahko uporabimo za tvorjenje števil v osnovi 10, npr. U + 0660, ARAPSKO-INDICIJSKA ŠTEVILNA NIČ. Formalno je decimalni znak znak v splošni kategoriji Unicode "Nd".
  • isdigit (): Števke vključujejo decimalne znake in števke, ki potrebujejo posebno obdelavo, na primer nadzvočne številke združljivosti. To zajema števke, ki jih ni mogoče uporabiti za oblikovanje števil v bazi 10, kot so številke Kharosthi. Formalno je številka znak, ki ima vrednost lastnosti Numeric_Type = Digit ali Numeric_Type = Decimal.
  • številčno (): Številski znaki vključujejo številčne znake in vsi znaki, ki imajo lastnost numerične vrednosti Unicode, npr. U + 2155, VULGARNA FRAKCIJA ENA PETA. Formalno so številski znaki tisti z vrednostjo lastnosti Numeric_Type = Digit, Numeric_Type = Decimal ali Numeric_Type = Numeric.

Po definiciji lahko razmerje med tremi metodami predstavimo kot:

isdecimal () ⊆ isdigit () ⊆ isnumeric ()

To pomeni, da če je niz decimalno, bo tudi številski in številski.

Sorodno: Kako ustvariti in uporabiti tuple v Pythonu

Primeri:

# Številke
str1 = "8734947"
natisni ("str1:")
print ("str1.isdecimal ():", str1.isdecimal ())
print ("str1.isdigit ():", str1.isdigit ())
print ("str1.isnumeric ():", str1.isnumeric ())
# Delna vrednost
str2 = "½"
natisni ("str2:")
print ("str2.isdecimal ():", str2.isdecimal ())
print ("str2.isdigit ():", str2.isdigit ())
print ("str2.isnumeric ():", str2.isnumeric ())
# Nadpisne vrednosti
str3 = "Drugi"
natisni ("str3:")
print ("str3.isdecimal ():", str3.isdecimal ())
print ("str3.isdigit ():", str3.isdigit ())
print ("str3.isnumeric ():", str3.isnumeric ())

Izhod:

str1:
str1.isdecimal (): True
str1.isdigit (): Res je
str1.isnumeric (): True
str2:
str2.isdecimal (): False
str2.isdigit (): False
str2.isnumeric (): Resnično
str3:
str3.isdecimal (): False
str3.isdigit (): Res je
str3.isnumeric (): True

Kako preveriti, ali je niz veljaven identifikator

Če je dani niz veljaven identifikator, lahko preverite s pomočjo isidentifier () metoda. Ta metoda se vrne Prav če je niz veljaven identifikator. V nasprotnem primeru se vrne Lažno.

Niz naj bi bil veljaven identifikator, če izpolnjuje naslednje pogoje:

1. Vsebuje samo alfanumerične znake in / ali podčrtaje.

2. Ne začne se s številskim znakom.

3. Ne vsebuje presledkov.

Sorodno: Kako uporabljati zanke v Pythonu

Primeri:

str1 = "var1"
# Ta metoda bo vrnila "True", ker je dani niz veljaven identifikator
checkstr1 = str1.isidentifier ()
natisni (checkstr1)
str2 = "var 1"
# Ta metoda bo vrnila "False", saj niz vsebuje presledek
checkstr2 = str2.isidentifier ()
tiskanje (checkstr2)
str3 = "var1 #"
# Ta metoda bo vrnila "False", saj ima niz poseben znak "#"
checkstr3 = str3.isidentifier ()
tiskanje (checkstr3)
str4 = "_var1_"
# Ta metoda bo vrnila "True", ker je dani niz veljaven identifikator
checkstr4 = str4.isidentifier ()
tiskanje (checkstr4)
str5 = "1var"
# Ta metoda bo vrnila "False", saj se niz začne s številko "1"
checkstr5 = str5.isidentifier ()
tiskanje (checkstr5)

Izhod:

Prav
Lažno
Lažno
Prav
Lažno

Kako preveriti, ali so vsi znaki v nizu z velikimi ali malimi črkami

S pomočjo znaka lahko preverite, ali je dani niz sestavljen samo iz velikih črk isupper () metoda.

Podobno lahko z znakom preverite, ali je dani niz sestavljen samo iz malih črk islower () metoda. Vrne se metoda isupper () Prav če so vsi znaki niza v velikih črkah in se vrne metoda islower () Prav če so vsi znaki niza z malimi črkami.

Primeri:

str1 = "MAKEUSEOF"
natisni ("str1:")
print ("str1.isupper ():", str1.isupper ())
print ("str1.islower ():", str1.islower ())
str2 = "makeuseof"
natisni ("str2:")
print ("str2.isupper ():", str2.isupper ())
print ("str2.islower ():", str2.islower ())
str3 = "MakeUseOf"
natisni ("str3:")
print ("str3.isupper ():", str3.isupper ())
print ("str3.islower ():", str3.islower ())

Izhod:

str1:
str1.isupper (): Res je
str1.islower (): False
str2:
str2.isupper (): False
str2.islower (): Res je
str3:
str3.isupper (): False
str3.islower (): False

Kako preveriti, ali so vsi znaki v nizu presledki

S pomočjo znaka lahko preverite, ali je dani niz sestavljen samo iz presledkov isspace () metoda.

Ta metoda se vrne Prav če so vsi znaki presledki. Če kateri od znakov v nizu ni presledek, se ta metoda vrne Lažno.

Primeri:

str1 = ""
# Ta metoda bo vrnila "True", ker dani niz vsebuje samo presledek
checkstr1 = str1.isspace ()
natisni (checkstr1)
str2 = "MUO"
# Ta metoda bo vrnila "False", saj niz vsebuje znake, ki niso presledki
checkstr2 = str2.isspace ()
tiskanje (checkstr2)
str3 = "-"
# Ta metoda bo vrnila "False", saj niz vsebuje znak, ki ni presledek
checkstr3 = str3.isspace ()
tiskanje (checkstr3)

Izhod:

Prav
Lažno
Lažno

Kako preveriti, ali besedilo upošteva pravila sloga naslova

Z besedilom lahko preverite, ali dano besedilo upošteva pravila naslova istitle () metoda.

Besedilo naj bi sledilo naslovnim pravilom, če se vse besede v besedilu začnejo z veliko začetnico, ostale besede pa so male črke. Če dano besedilo sledi temu pravilu, se vrne metoda istitle () Pravv nasprotnem primeru se vrne Lažno.

Primeri:

str1 = "Dobrodošli v Muo"
# Ta metoda bo vrnila "True", ker dani niz sledi pravilom naslova
checkstr1 = str1.istitle ()
natisni (checkstr1)
str2 = "Dobrodošli v Muo"
# Ta metoda bo vrnila "False", saj se druga beseda ("do") ne začne z velikimi črkami
checkstr2 = str2.istitle ()
tiskanje (checkstr2)
str3 = "dobrodošli v muo"
# Ta metoda bo vrnila "False", saj se vse besede začnejo z malimi črkami
checkstr3 = str3.istitle ()
tiskanje (checkstr3)

Izhod:

Prav
Lažno
Lažno

Naj bo programiranje zabavno z uporabo nizov

Strune so zelo koristne pri sporočanju informacij iz programa svojim uporabnikom. Uporaba logične validacije pa ni edini način igranja z vrsticami Python.

Z manipulacijo nizov lahko pretvorite dolgočasno besedilo v zanimivo besedilo. Bodite kreativni in zabavajte se s programiranjem!

E-naslov
Učenje Pythona? Tu je navodila za upravljanje z nizi

Uporaba in manipulacija nizov v Pythonu se lahko zdi težka, vendar je varljivo enostavna.

Preberite Naprej

Sorodne teme
  • Programiranje
  • Python
  • Vadnice za kodiranje
O avtorju
Yuvraj Chandra (11 objavljenih člankov)

Yuvraj je dodiplomski študent računalništva na Univerzi v Delhiju v Indiji. Navdušen je nad spletnim razvojem Full Stack. Ko ne piše, raziskuje globino različnih tehnologij.

Več od Yuvraj Chandra

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, preglede, brezplačne e-knjige in ekskluzivne ponudbe!

Še en korak…!

Potrdite svoj e-poštni naslov v e-poštnem sporočilu, ki smo vam ga pravkar poslali.

.