Спіс метадаў радкоў для маніпулявання вялікімі і малымі літарамі ў Python

Бізнэс

Тып радка Python (str) стандартна пастаўляецца са зручнымі метадамі для маніпулявання вялікімі і малымі літарамі. Вы можаце пераўтварыць паміж вялікім і малым рэгістрам і вызначыць рэгістр.

Тут прадстаўлена наступная інфармацыя.

  • Пераўтварэнне паміж вялікімі і малымі літарамі
    • Асноўнае выкарыстанне
    • Апрацоўка поўнапамерных і паўпамерных сімвалаў
    • str.upper()Пераўтварыць усе літары ў вялікія
    • str.lower()Пераўтварыць усе літары ў малыя
    • str.capitalize()Ператварыце першую літару ў вялікую, а астатнія ў малую.
    • str.title()Пераўтварыце першую літару слова ў загалоўную, а астатнія ў малую.
    • str.swapcase()Пераўтварыце вялікія літары ў малыя і малыя ў вялікія.
  • Вызначце вялікія і малыя літары
    • str.isupper(): Вызначыце, ці ўсе літары вялікія
    • str.islower(): Вызначыце, ці ўсе сімвалы ў ніжнім рэгістры.
    • str.istitle(): Вызначце, ці з’яўляецца гэта загалоўны рэгістр.
  • Параўнайце радкі без уліку рэгістра

Пераўтварэнне паміж вялікімі і малымі літарамі

Асноўнае выкарыстанне

Спачатку я растлумачу асноўнае выкарыстанне. У якасці прыкладу мы будзем выкарыстоўваць метад upper() для напісання вялікіх літар, але тое ж самае ставіцца і да іншых метадаў.

Дзеля зручнасці мы пішам «канверсія», але ў Python аб’екты радкавага тыпу (str) не абнаўляюцца, таму сама першапачатковая радок (s_org у прыкладзе) не змяняецца.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

print(s_org)
# pYThon proGramminG laNguAge

Калі вы хочаце выкарыстоўваць ператвораны радок пазней, вы можаце захаваць яго ў новай зменнай наступным чынам.

s_new = s_org.upper()
print(s_new)
# PYTHON PROGRAMMING LANGUAGE

Таксама можна перазапісаць зыходную зменную.

s_org = s_org.upper()
print(s_org)
# PYTHON PROGRAMMING LANGUAGE

Апрацоўка поўнапамерных і паўпамерных сімвалаў

Калі сімвал адчувальны да рэгістра, напрыклад, алфавіт, ён будзе ператвораны як у аднабайтавыя, так і ў двухбайтавыя сімвалы.

Сімвалы, якія не адчувальныя да рэгістра, такія як лічбы і кітайскія іерогліфы, застаюцца нязменнымі. Прыклад прыведзены для upper(), але тое ж самае ставіцца і да іншых метадаў.

s_org = 'Pyhon Python 123'

print(s_org.upper())
# PYHON PYTHON 123

str.upper(): пераўтварыць усе літары ў верхні рэгістр

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

str.lower(): пераўтварыць усе сімвалы ў ніжні рэгістр

s_org = 'pYThon proGramminG laNguAge'

print(s_org.lower())
# python programming language

str.capitalize(): пераўтварыць першую літару ў верхні рэгістр, астатнія ў малыя

s_org = 'pYThon proGramminG laNguAge'

print(s_org.capitalize())
# Python programming language

str.title(): пераўтварыць першую літару слова ў верхні рэгістр, а астатнія ў малую

Пераход у так званы тытульны рэгістр.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.title())
# Python Programming Language

str.swapcase(): пераўтварыць верхні рэгістр у малы, ніжні ў верхні рэгістр

Памяняйце месцамі вялікія і маленькія літары.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.swapcase())
# PytHON PROgRAMMINg LAnGUaGE

Вызначце вялікія і малыя літары

У наступных прыкладах метады выклікаюцца непасрэдна з радковых літаралаў, такіх як ‘python’, але тое ж самае дакладна і пры захаванні ў зменных, як і ў папярэдніх прыкладах.

str.isupper(): вызначыць, ці ўсе літары вялікія

isupper() вяртае праўду, калі змяшчае прынамсі адзін сімвал з улікам рэгістра, і ўсе яны з’яўляюцца вялікімі рэгістрамі, і false у адваротным выпадку.

print('PYTHON'.isupper())
# True

print('Python'.isupper())
# False

Калі сімвал адчувальны да рэгістра, ацэньваюцца нават двухбайтавыя сімвалы.

print('PYTHON'.isupper())
# True

Калі ўключаны нават адзін сімвал, адчувальны да рэгістра, сімвал, які не адчувальны да рэгістра, ігнаруецца, але калі не ўключаны сімвал, адчувальны да рэгістра (усе сімвалы не адчувальныя да рэгістра), рашэнне памылковае.

print('PYTHON 123'.isupper())
# True

print('123'.isupper())
# False

str.islower(): вызначыць, ці ўсе сімвалы малыя

islower() вяртае праўду, калі змяшчае прынамсі адзін сімвал з улікам рэгістра, і ўсе яны ўпісаны з малога рэгістра, і false у адваротным выпадку.

print('python'.islower())
# True

print('Python'.islower())
# False

Калі сімвал адчувальны да рэгістра, ацэньваюцца нават двухбайтавыя сімвалы.

print('python'.islower())
# True

Калі ўключаны нават адзін сімвал, адчувальны да рэгістра, сімвал, які не адчувальны да рэгістра, ігнаруецца, але калі не ўключаны сімвал, адчувальны да рэгістра (усе сімвалы не адчувальныя да рэгістра), рашэнне памылковае.

print('python 123'.islower())
# True

print('123'.islower())
# False

str.istitle(): Вызначыце, ці з’яўляецца рэгістр загалоўным.

istitle() вяртае праўду, калі радок уяўляе сабой рэгістр загалоўка (першая літара слова вялікая, астатнія малыя), у адваротным выпадку false.

print('Python Programming Language'.istitle())
# True

print('PYTHON Programming Language'.istitle())
# False

Калі ён утрымлівае сімвалы без уліку рэгістра, ён будзе ілжывым, калі перад сімваламі без уліку рэгістра стаіць маленькая літара.

print('★Python Programming Language'.istitle())
# True

print('Python★ Programming Language'.istitle())
# True

print('Py★thon Programming Language'.istitle())
# False

Звярніце ўвагу, што радкоў, як у прыкладзе вышэй, не так шмат, але рэальна ўключыць лічбы ў парадкавыя лічэбнікі і іншыя выпадкі.

print('The 1st Team'.istitle())
# False

print('The 1St Team'.istitle())
# True

Калі не ўключаны сімвалы з улікам рэгістра (усе сімвалы не ўлічваюць рэгістр), false.

print('123'.istitle())
# False

Параўнайце радкі без уліку рэгістра

Пры параўнанні радкоў розныя вялікія і малыя літары не лічацца эквівалентнымі.

s1 = 'python'
s2 = 'PYTHON'

print(s1 == s2)
# False

Калі вы хочаце зрабіць параўнанне без уліку рэгістра, вы можаце выкарыстоўваць upper() або lower(), каб пераўтварыць гэтыя два і параўнаць іх.

print(s1.upper() == s2.upper())
# True

print(s1.lower() == s2.lower())
# True

print(s1.capitalize() == s2.capitalize())
# True

print(s1.title() == s2.title())
# True
Copied title and URL