Радкі Python - Агляд асноўных аперацый з радкамі

Радкі - адзін з асноўных тыпаў дадзеных у Python. Радкі Python - гэта спалучэнне любой колькасці сімвалаў, зробленых з літар, лічбаў і іншых спецыяльных сімвалаў. У гэтым уроку вы даведаецеся, як ствараць, маніпуляваць і фарматаваць іх для выкарыстання ў розных сцэнарыях.



Стварэнне новых радкоў у Python

Каб стварыць новы радок Python, вам проста трэба аб'явіць паслядоўнасць сімвалаў, укладзеных адзінарнымі або падвойнымі двукоссямі. Патройныя двукоссі таксама выкарыстоўваюцца для радкоў, якія складаюцца з некалькіх радкоў.

double_quotes = 'My name is John!' single_quotes = 'My name is John!' multi_line_string = '''1. My name is John!



2. I am a programmer'''


Індэксацыя радкоў

Кожны сімвал у радку Python мае цэлалікавы індэкс. Індэксацыя пачынаецца з 0 у першым знаку і павялічваецца ўздоўж радка. Вы можаце выкарыстоўваць індэкс асобнага сімвала, каб атрымаць гэты сімвал з радка, як паказана ў наступным прыкладзе.


myPet = 'Dog not a cat' myPet[0] # 'D' myPet[5] # 'o' myPet[7] # ' ' myPet[12] # 't' # myPet[15] # IndexError

Спроба атрымаць доступ да персанажа па-за індэксам канчатковага сімвала прыводзіць да Памылка IndexError .

Вы можаце атрымаць доступ да сімвала ў радку, выкарыстоўваючы адмоўны індэкс. У гэтым выпадку індэксацыя пачынаецца з -1 у канчатковым сімвале радка і адмоўна павялічваецца пры звароце назад.


myPet = 'Dog not a cat' myPet[-1] # 't' myPet[-6] # ' ' myPet[-8] # 'o' myPet[-13] # 'D'

Наразанне радкоў

Нарэзка - метад вымання падрадка (часткі радка) з радка. Гэтая задача дасягаецца пры дапамозе індэксацыі радкоў.

myPet = 'Dog not a cat' myPet[5:7] # 'ot' myPet[1:12] # 'og not a ca'

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

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

myPet = 'Dog not a cat' myPet[:7] # 'Dog not' myPet[10:] # 'cat' myPet[:] # 'Dog not a cat'

Вы таксама можаце даць негатыўныя індэксы ў якасці індэкса нарэзкі.


myPet = 'Dog not a cat' myPet[10:-1] # 'ca'

Даўжыня радка

Убудаваны метад Python len() выводзіць даўжыню радка.

myPet = 'Dog not a cat' len(myPet) # 13

Ітэраваць праз радок

Вы можаце перабіраць кожны сімвал у радку, выкарыстоўваючы for пятля.

Прыклад:

name = 'John' for char in name:
print(char) # 'J', 'o', 'h', 'n'


Канкатэнацыя радкоў

Злучэнне радкоў - гэта аб'яднанне дзвюх ці больш радкоў для стварэння адной радкі. У Python існуе некалькі метадаў аб'яднання радкоў.


Адзін з іх выкарыстоўвае + аператар.

str1 = 'Hello' str2 = 'World' concat_str = str1 + str2 # 'HelloWorld' concat_str = str1 + ' ' + str2 # 'Hello World'

Вы можаце выкарыстоўваць * аператар, каб злучыць радок з сабой любую колькасць разоў.

concat_str = str1*3 # 'HelloHelloHello'

Іншы спосаб аб'яднання радкоў - праз join() метад.

Убудаваны join() метад выкарыстоўваецца для аб'яднання масіва радкоў з выкарыстаннем агульнага раздзяляльніка.


arr = [str1, str2] concat_str = (' ').join(arr) # 'Hello World' concat_str = (',').join(arr) # 'Hello,World'

У прыведзеным вышэй кодзе першы join() метад дадае прабел паміж кожным словам у масіве.

Другі join() метад устаўляе коску паміж кожным словам у масіве.



Струннае і міжнароднае аб'яднанне

У Python мы таксама можам аб'яднаць радок з цэлым лікам, але не з + аператар. Калі мы паспрабуем выкарыстаць наступны код:

name = 'John' age = 35 print(a + b)

Мы атрымаем:


Traceback (most recent call last): File 'concat.py', line 5, in
print(a + b) TypeError: can only concatenate str (not 'int') to str
нататка:Вы не можаце аб'яднаць радок і цэлае лік, выкарыстоўваючы + аператар.

Каб пазбегнуць гэтай памылкі, мы можам выкарыстоўваць str() метад для пераўтварэння цэлага ліку ў радок, напрыклад:

name = 'John ' age = '35' print(a + str(b)) #John 35

Як падзяліць радок

Убудаваны split() метад выкарыстоўваецца для падзелу адной радка на масіў радкоў.

string = 'My name is John' split_arr = string.split(' ') # ['My', 'name', 'is', 'John'] We can also split a string using a separator: string = 'John, Rose, Jack, Mary' split_arr = string.split(', ') # ['John', 'Rose', 'Jack', 'Mary']

Палоска - выдаліце ​​белыя прабелы

strip(), убудаваны метад радка выкарыстоўваецца для выдалення прабелаў з пачатку і канца радка.

string = ' Hello, World ' stripper_str = string.strip() # 'Hello, World'

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

Ёсць два варыянты strip() метад, левая паласа і правая паласа:

  • lstrip()
  • rstrip()

Гэтыя метады выдаляюць прабелы ў левым і правым баку радка адпаведна.

Прыклад:

lsplit_str = string.lstrip() # 'Hello, World ' rsplit_str = string.rstrip() # ' Hello, World'

Стрып-метады асабліва карысныя пры чытанні карыстацкіх дадзеных, дзе карыстальнікі могуць перадаваць дадатковыя прабелы.



Фарматаванне радка

Python format() метад выкарыстоўваецца для фарматавання радка. Фігурныя дужкі {} выкарыстоўваюцца ўнутры радка, які трэба адфарматаваць у якасці запаўняльніка для часткі, якую неабходна замяніць аргументамі, якія прадастаўляюцца format() метад.

Прыклад:

'Hello, {}'.format('John') # 'Hello, John'

У прыведзеным вышэй прыкладзе {} у адфарматаваным радку замяняецца на 'Джон'.

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

Прыклад:

'I have a {}, {}, and a {}'.format('dog', 'cat', 'rabbit') # 'I have a dog, cat, and a rabbit' 'I have a {1}, {0}, and a {2}'.format('dog', 'cat', 'rabbit') # 'I have a cat, dog, and a rabbit'

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

Прыклад:

print('{friend} is my friend and {enemy} is my enemy'.format(friend='John', enemy='Jack')) # 'John is my friend and Jack is my enemy'

format() метад досыць універсальны, паколькі яго можна выкарыстоўваць для многіх выпадкаў выкарыстання.

Вось некалькі іншых прыкладанняў format() метад:

arr = [3, 5] 'I have {0[0]} dogs and {0[1]} cats'.format(arr) # 'I have 3 dogs and 4 cats' #convert numbers to different bases 'int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}'.format(42) # 'int: 42; hex: 2a; oct: 52; bin: 101010'

Пераўтварыце радок у малую

Выкарыстанне Python's lower() метад, вы можаце пераўтварыць радок у малую.

Прыклад:

string = 'Hello, World!' string.lower() # 'hello, world!'

Пераўтварыце радок у вялікую

Сапраўды гэтак жа, выкарыстоўваючы Python upper() метад, вы можаце пераўтварыць радок у вялікі рэгістр.

Прыклад:

string = 'Hello, World!' string.upper() # 'HELLO, WORLD!'

Выснова

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

Даведка: Радкавая дакументацыя Python