Pythonova vrsta string (str) ima standardno priročne metode za ravnanje z velikimi in malimi črkami. Pretvarjate lahko med velikimi in malimi črkami ter določate velikost črk.
Tu so na voljo naslednje informacije.
- Pretvarjanje med velikimi in malimi črkami
- Osnovna uporaba
- Ravnanje z znaki polne in polovične velikosti
str.upper()
Pretvarjanje vseh črk v velike črkestr.lower()
Pretvarjanje vseh črk v male črkestr.capitalize()
Prvo črko spremenite v veliko, preostale pa v malo.str.title()
Prvo črko v besedi spremenite v veliko, preostale pa v malo.str.swapcase()
Pretvarjanje velikih črk v male in malih črk v velike.
- Določanje velikih in malih črk
str.isupper()
: Določite, ali so vse črke velike.str.islower()
: Določite, ali so vsi znaki mali.str.istitle()
: Ugotovite, ali gre za naslovni primer.
- primerjanje nizov brez upoštevanja velikosti črk
- Pretvarjanje med velikimi in malimi črkami
- Osnovna uporaba
- Ravnanje z znaki polne in polovične velikosti
- str.upper(): pretvori vse črke v velike.
- str.lower(): pretvori vse znake v male črke
- str.capitalize(): pretvori prvo črko v veliko, preostale v malo.
- str.title(): pretvori prvo črko besede v veliko, preostale pa v malo.
- str.swapcase(): pretvori velike črke v male, male črke v velike
- Določanje velikih in malih črk
- primerjanje nizov brez upoštevanja velikosti črk
Pretvarjanje med velikimi in malimi črkami
Osnovna uporaba
Najprej bom razložil osnovno uporabo. Kot primer bomo uporabili metodo upper() za pisanje velikih črk, vendar enako velja tudi za druge metode.
Zaradi priročnosti pišemo “pretvorba”, vendar v Pythonu objektov tipa string (str) ni mogoče posodabljati, zato se prvotni niz (s_org v primeru) ne spremeni.
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE print(s_org) # pYThon proGramminG laNguAge
Če želite pretvorjeni niz uporabiti pozneje, ga lahko shranite v novo spremenljivko, kot sledi.
s_new = s_org.upper() print(s_new) # PYTHON PROGRAMMING LANGUAGE
Mogoče je tudi prepisati prvotno spremenljivko.
s_org = s_org.upper() print(s_org) # PYTHON PROGRAMMING LANGUAGE
Ravnanje z znaki polne in polovične velikosti
Če je znak občutljiv na velikost črk, na primer abeceda, bo pretvorjen v enobajtne in dvobajtne znake.
Znaki, ki ne razlikujejo velikih in malih črk, kot so številke in kitajski znaki, ostanejo nespremenjeni. Primer je prikazan za metodo upper(), vendar enako velja tudi za druge metode.
s_org = 'Pyhon Python 123' print(s_org.upper()) # PYHON PYTHON 123
str.upper(): pretvori vse črke v velike.
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE
str.lower(): pretvori vse znake v male črke
s_org = 'pYThon proGramminG laNguAge' print(s_org.lower()) # python programming language
str.capitalize(): pretvori prvo črko v veliko, preostale v malo.
s_org = 'pYThon proGramminG laNguAge' print(s_org.capitalize()) # Python programming language
str.title(): pretvori prvo črko besede v veliko, preostale pa v malo.
Pretvorba v tako imenovani naslovni primer.
s_org = 'pYThon proGramminG laNguAge' print(s_org.title()) # Python Programming Language
str.swapcase(): pretvori velike črke v male, male črke v velike
Zamenjajte velike in male črke.
s_org = 'pYThon proGramminG laNguAge' print(s_org.swapcase()) # PytHON PROgRAMMINg LAnGUaGE
Določanje velikih in malih črk
V naslednjih primerih se metode kličejo neposredno iz literalnih nizov, kot je 'python', enako pa velja, če so shranjene v spremenljivkah, kot v prejšnjih primerih.
str.isupper(): določi, ali so vse črke velike
isupper() vrne true, če vsebuje vsaj en znak, ki je občutljiv na velikost črk, in so vse črke velike, v nasprotnem primeru pa false.
print('PYTHON'.isupper()) # True print('Python'.isupper()) # False
Če je znak občutljiv na velikost črk, se ocenijo tudi dvobajtni znaki.
print('PYTHON'.isupper()) # True
Če je vključen celo en sam znak, občutljiv na velikost črk, se znak, občutljiv na velikost črk, ne upošteva, če pa ni vključen noben znak, občutljiv na velikost črk (vsi znaki so občutljivi na velikost črk), je odločitev napačna.
print('PYTHON 123'.isupper()) # True print('123'.isupper()) # False
str.islower(): določi, ali so vsi znaki mali.
islower() vrne true, če vsebuje vsaj en znak, ki je občutljiv na velike in male črke, in false v nasprotnem primeru.
print('python'.islower()) # True print('Python'.islower()) # False
Če je znak občutljiv na velikost črk, se ocenijo tudi dvobajtni znaki.
print('python'.islower()) # True
Če je vključen celo en sam znak, občutljiv na velikost črk, se znak, občutljiv na velikost črk, ne upošteva, če pa ni vključen noben znak, občutljiv na velikost črk (vsi znaki so občutljivi na velikost črk), je odločitev napačna.
print('python 123'.islower()) # True print('123'.islower()) # False
str.istitle(): Določi, ali je primer naslovni primer.
istitle() vrne true, če je niz naslovna beseda (prva črka besede je velika, ostale so male črke), v nasprotnem primeru pa false.
print('Python Programming Language'.istitle()) # True print('PYTHON Programming Language'.istitle()) # False
Če vsebuje znake, ki niso občutljivi na velikost črk, bo vrednost false, če je pred znaki, ki niso občutljivi na velikost črk, mala črka.
print('★Python Programming Language'.istitle()) # True print('Python★ Programming Language'.istitle()) # True print('Py★thon Programming Language'.istitle()) # False
Upoštevajte, da ni veliko nizov, kot je zgornji primer, vendar je realno vključiti številke v vrstilnih številkah in drugih primerih.
print('The 1st Team'.istitle()) # False print('The 1St Team'.istitle()) # True
Če niso vključeni znaki, občutljivi na velikost črk (vsi znaki niso občutljivi na velikost črk), false.
print('123'.istitle()) # False
primerjanje nizov brez upoštevanja velikosti črk
Pri primerjanju nizov različne velike in male črke niso enakovredne.
s1 = 'python' s2 = 'PYTHON' print(s1 == s2) # False
Če želite opraviti primerjavo brez upoštevanja velikih in malih črk, lahko uporabite upper() ali lower() za pretvorbo in primerjavo.
print(s1.upper() == s2.upper()) # True print(s1.lower() == s2.lower()) # True print(s1.capitalize() == s2.capitalize()) # True print(s1.title() == s2.title()) # True