Pythonova vrsta stringa (str) standardno dolazi s praktičnim metodama za manipulaciju velikim i malim slovima. Možete pretvoriti velika i mala slova i odrediti velika slova.
Ovdje su navedene sljedeće informacije.
- Pretvaranje između velikih i malih slova
- Osnovna upotreba
- Rukovanje likovima u punoj i polovičnoj veličini
str.upper()
Pretvorite sva slova u velikastr.lower()
Pretvorite sva slova u mala slovastr.capitalize()
Pretvorite prvo slovo u velika, a ostalo u mala.str.title()
Pretvorite prvo slovo riječi u velika, a ostatak u mala.str.swapcase()
Pretvorite velika slova u mala i mala slova u velika.
- Odredi velika i mala slova
str.isupper()
: Odredite jesu li sva slova velikastr.islower()
: Odredite jesu li svi znakovi mala slova.str.istitle()
: Odredite je li riječ o velikom slovu.
- Usporedite nizove na način bez obzira na velika i mala slova
- Pretvaranje između velikih i malih slova
- Osnovna upotreba
- Rukovanje likovima u punoj i polovičnoj veličini
- str.upper(): pretvoriti sva slova u velika
- str.lower(): pretvoriti sve znakove u mala slova
- str.capitalize(): pretvori prvo slovo u velika, a ostalo u mala
- str.title(): pretvoriti prvo slovo riječi u velika, a ostatak u mala
- str.swapcase(): pretvoriti velika u mala slova, mala u velika
- Odredi velika i mala slova
- Usporedite nizove na način bez obzira na velika i mala slova
Pretvaranje između velikih i malih slova
Osnovna upotreba
Prvo ću objasniti osnovnu upotrebu. Upotrijebit ćemo metodu upper() za velika slova kao primjer, ali isto vrijedi i za druge metode.
Radi praktičnosti pišemo “conversion”, ali u Pythonu objekti tipa string (str) se ne mogu ažurirati, pa se sam izvorni niz (s_org u primjeru) ne mijenja.
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE print(s_org) # pYThon proGramminG laNguAge
Ako kasnije želite upotrijebiti konvertirani niz, možete ga pohraniti u novu varijablu na sljedeći način.
s_new = s_org.upper() print(s_new) # PYTHON PROGRAMMING LANGUAGE
Također je moguće prebrisati izvornu varijablu.
s_org = s_org.upper() print(s_org) # PYTHON PROGRAMMING LANGUAGE
Rukovanje likovima u punoj i polovičnoj veličini
Ako je znak osjetljiv na velika i mala slova, kao što je abeceda, bit će pretvoren u jednobajtne i dvobajtne znakove.
Znakovi koji ne razlikuju velika i mala slova, kao što su brojevi i kineski znakovi, ostaju nepromijenjeni. Primjer je za upper(), ali isto vrijedi i za druge metode.
s_org = 'Pyhon Python 123' print(s_org.upper()) # PYHON PYTHON 123
str.upper(): pretvoriti sva slova u velika
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE
str.lower(): pretvoriti sve znakove u mala slova
s_org = 'pYThon proGramminG laNguAge' print(s_org.lower()) # python programming language
str.capitalize(): pretvori prvo slovo u velika, a ostalo u mala
s_org = 'pYThon proGramminG laNguAge' print(s_org.capitalize()) # Python programming language
str.title(): pretvoriti prvo slovo riječi u velika, a ostatak u mala
Pretvorba u tzv.
s_org = 'pYThon proGramminG laNguAge' print(s_org.title()) # Python Programming Language
str.swapcase(): pretvoriti velika u mala slova, mala u velika
Zamijenite velika i mala slova.
s_org = 'pYThon proGramminG laNguAge' print(s_org.swapcase()) # PytHON PROgRAMMINg LAnGUaGE
Odredi velika i mala slova
U sljedećim primjerima metode se pozivaju izravno iz literala niza kao što je ‘python’, ali isto vrijedi i kada su pohranjene u varijablama kao u prethodnim primjerima.
str.isupper(): odredi jesu li sva slova velika
isupper() vraća true ako sadrži barem jedan znak osjetljiv na velika i mala slova i svi su velika slova, a u suprotnom false.
print('PYTHON'.isupper()) # True print('Python'.isupper()) # False
Ako je znak osjetljiv na velika i mala slova, ocjenjuju se čak i dvobajtni znakovi.
print('PYTHON'.isupper()) # True
Ako je uključen čak i jedan znak osjetljiv na velika i mala slova, znak koji ne razlikuje velika i mala slova se zanemaruje, ali ako nije uključen nijedan znak osjetljiv na velika i mala slova (svi znakovi ne razlikuju velika i mala slova), odluka je pogrešna.
print('PYTHON 123'.isupper()) # True print('123'.isupper()) # False
str.islower(): odredi jesu li svi znakovi mala slova
islower() vraća true ako sadrži barem jedan znak osjetljiv na velika i mala slova i svi su mala slova, a u suprotnom false.
print('python'.islower()) # True print('Python'.islower()) # False
Ako je znak osjetljiv na velika i mala slova, ocjenjuju se čak i dvobajtni znakovi.
print('python'.islower()) # True
Ako je uključen čak i jedan znak osjetljiv na velika i mala slova, znak koji ne razlikuje velika i mala slova se zanemaruje, ali ako nije uključen nijedan znak osjetljiv na velika i mala slova (svi znakovi ne razlikuju velika i mala slova), odluka je pogrešna.
print('python 123'.islower()) # True print('123'.islower()) # False
str.istitle(): Odredite jesu li velika i mala slova naslovna.
istitle() vraća true ako je string veliko slovo u naslovu (prvo slovo riječi je veliko, ostalo je malo), u suprotnom false.
print('Python Programming Language'.istitle()) # True print('PYTHON Programming Language'.istitle()) # False
Ako sadrži znakove neosjetljive na velika i mala slova, bit će lažno ako pred znakovima koji ne razlikuju velika i mala slova.
print('★Python Programming Language'.istitle()) # True print('Python★ Programming Language'.istitle()) # True print('Py★thon Programming Language'.istitle()) # False
Imajte na umu da nema mnogo nizova kao u gornjem primjeru, ali je realno uključiti brojeve u redne brojeve i druge slučajeve.
print('The 1st Team'.istitle()) # False print('The 1St Team'.istitle()) # True
Ako nema uključenih znakova koji razlikuju velika i mala slova (svi znakovi ne razlikuju velika i mala slova), netočno.
print('123'.istitle()) # False
Usporedite nizove na način bez obzira na velika i mala slova
Kada se uspoređuju nizovi, različita velika i mala slova ne smatraju se ekvivalentima.
s1 = 'python' s2 = 'PYTHON' print(s1 == s2) # False
Ako želite napraviti usporedbu bez obzira na velika i mala slova, možete koristiti upper() ili lower() da ih pretvorite i usporedite.
print(s1.upper() == s2.upper()) # True print(s1.lower() == s2.lower()) # True print(s1.capitalize() == s2.capitalize()) # True print(s1.title() == s2.title()) # True