Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ split() ΠΈ join() Π² Python

Π—Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎ строкам ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊ Π½ΠΈΠΌ Ρƒ нас Π² Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ ΠΊΠ°Π½Π°Π»Π΅ PythonTurbo

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со строками Π² Python Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ строку Π½Π° подстроки ΠΈΠ»ΠΈ, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ нСсколько ΠΌΠ΅Π»ΠΊΠΈΡ… кусочков Π² ΠΎΠ΄Π½Ρƒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ строку. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ split() ΠΈ join(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для раздСлСния ΠΈ объСдинСния строк. ΠœΡ‹ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π»Π΅Π³ΠΊΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π½Π°ΠΌ Π·Π°Π΄Π°Ρ‡ΠΈ.

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ строки Π² Python нСизмСняСмы, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ для Π½ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π½Π΅ измСняя исходныС строки. Π˜Ρ‚Π°ΠΊ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ!

ΠœΠ΅Ρ‚ΠΎΠ΄ split()

Когда Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ строку Π½Π° подстроки, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ split().

ΠœΠ΅Ρ‚ΠΎΠ΄ split() ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ строку ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список подстрок. Бинтаксис Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

<string>.split(sep,maxsplit)

Π—Π΄Π΅ΡΡŒ <string> – любая допустимая строка Π² Python, Π° sep – это Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку. Π•Π³ΠΎ слСдуСт ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ строки.

НапримСр, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ <string> ΠΏΠΎ запятым, Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ sep = ",".

sep – Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ split() Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ строки ΠΏΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌ.

maxsplit – Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ, сколько Ρ€Π°Π· Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку <string>. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ maxsplit ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ -1. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ строку ΠΏΠΎ всСм вхоТдСниям ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° sep.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку Π½Π° Π΄Π²Π΅ части, ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ запятой, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ maxsplit = 1. Π’Π°ΠΊ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π΄Π²Π΅ подстроки: части исходной строки Π΄ΠΎ ΠΈ послС ΠΏΠ΅Ρ€Π²ΠΎΠΉ запятой.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΈ ΠΎΠ΄Π½ΠΎΠΌ Ρ€Π°Π·Ρ€Π΅Π·Π΅ строки Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ 2 подстроки. ΠŸΡ€ΠΈ Π΄Π²ΡƒΡ… Ρ€Π°Π·Ρ€Π΅Π·Π°Ρ… β€” 3 подстроки. Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, разрСзая строку k Ρ€Π°Π·, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ k+1 Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ split() Π² дСйствии.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования ΠΌΠ΅Ρ‚ΠΎΠ΄Π° split() Π² Python

Π—Π°Π΄Π°Π΄ΠΈΠΌ строку my_string, ΠΊΠ°ΠΊ это ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ΅. ПослС этого Π²Ρ‹Π·ΠΎΠ²Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ split() для my_string Π±Π΅Π· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² sep ΠΈ maxsplit.

my_string = "I code for 2 hours everyday"
my_string.split()
# ['I', 'code', 'for', '2', 'hours', 'everyday']

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ my_string Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π° ΠΏΠΎ всСм ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌ. ΠœΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список подстрок.

Рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π—Π΄Π΅ΡΡŒ my_string содСрТит названия Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ², Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ запятыми.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ my_string ΠΏΠΎ запятым. Для этого Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ sep = "," ΠΈΠ»ΠΈ просто ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ "," ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅.

my_string = "Apples,Oranges,Pears,Bananas,Berries" my_string. split(",") # ['Apples', 'Oranges', 'Pears', 'Bananas', 'Berries']

Как ΠΈ оТидалось, ΠΌΠ΅Ρ‚ΠΎΠ΄ split() Π²Π΅Ρ€Π½ΡƒΠ» список Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ², Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Ρ€ΡƒΠΊΡ‚ ΠΈΠ· my_string стал элСмСнтом списка.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ maxsplit ΠΈ установив Π΅Π³ΠΎ Ρ€Π°Π²Π½Ρ‹ΠΌ 2.

my_string.split(",", 2) # ['Apples', 'Oranges', 'Pears,Bananas,Berries']

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ список.

Напомним, Ρ‡Ρ‚ΠΎ my_string = "Apples,Oranges,Pears,Bananas,Berries", ΠΈ ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ эту строку ΠΏΠΎ запятым Β«,Β».

ΠŸΠ΅Ρ€Π²Π°Ρ запятая стоит послС Apples, ΠΈ послС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ раздСлСния Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π΅ подстроки: Apples ΠΈ Oranges,Pears,Bananas,Berries.

Вторая запятая стоит послС Oranges. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, послС Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ дСлСния Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΆΠ΅ Ρ‚Ρ€ΠΈ подстроки: Apples, Oranges ΠΈ Pears,Bananas,Berries.

Π‘Π΄Π΅Π»Π°Π² Π΄Π²Π° Ρ€Π°Π·Ρ€Π΅Π·Π° строки, ΠΌΡ‹ достигли установлСнного максимума, ΠΈ дальнСйшСС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ρ‡Π°ΡΡ‚ΡŒ строки послС Π²Ρ‚ΠΎΡ€ΠΎΠΉ запятой ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ΡΡ Π² ΠΎΠ΄ΠΈΠ½ элСмСнт Π² Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠΌ спискС.

НадСюсь, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ split() ΠΈ для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ½Ρ‹ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ sep ΠΈ maxsplit.

ΠœΠ΅Ρ‚ΠΎΠ΄ join()

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ строку Π½Π° подстроки, ΠΏΠΎΡ€Π° Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ join() для формирования строки ΠΈΠ· подстрок.

Бинтаксис ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Python join() ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

<sep>.join(<iterable>)

Π—Π΄Π΅ΡΡŒ <iterable> – любой ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Python, содСрТащий подстроки. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, список ΠΈΠ»ΠΈ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ. <sep> – это Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ подстроки.

По сути, ΠΌΠ΅Ρ‚ΠΎΠ΄ join() ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ всС элСмСнты Π² <iterable>, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ <sep> Π² качСствС раздСлитСля.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΡ€Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²!

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования ΠΌΠ΅Ρ‚ΠΎΠ΄Π° join() Π² Python

Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ Ρ€Π°Π·Π±ΠΈΠ²Π°Π»ΠΈ строку my_string ΠΏΠΎ запятым ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π»ΠΈ Π² ΠΈΡ‚ΠΎΠ³Π΅ список подстрок. НазовСм этот список

my_list.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ сформируСм строку, объСдинив элСмСнты этого списка ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° join(). ВсС элСмСнты Π² my_list – это названия Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ².

my_list = my_string.split(",")
# послС раздСлСния my_string ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ my_list:
# ['Apples', 'Oranges', 'Pears', 'Bananas', 'Berries']

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ для присоСдинСния Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Π²ΠΈΠ΄Π΅ строки. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ с синтаксичСскими ошибками.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ элСмСнты Π²

my_list с использованиСм запятой Π² качСствС раздСлитСля, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ "," Π° Π½Π΅ просто ,. Π­Ρ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ ΠΊΠΎΠ΄Π° Π½ΠΈΠΆΠ΅.

", ". join(my_list)
# Output: Apples, Oranges, Pears, Bananas, Berries

Π—Π΄Π΅ΡΡŒ элСмСнты my_list ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² ΠΎΠ΄Π½Ρƒ строку с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ запятых, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹.

Π Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π² качСствС раздСлитСля 3 символа подчСркивания

___ .

"___".join(my_list)
# Output: Apples___Oranges___Pears___Bananas___Berries

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π² my_list Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Π² ΠΎΠ΄Π½Ρƒ строку ΠΈ ΠΎΡ‚Π΄Π΅Π»Π΅Π½Ρ‹ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° трСмя подчСркиваниями ___.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ строку ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… подстрок с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° join().

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ рассмотрСли строковыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ split() ΠΈ join(). Из этой ΡΡ‚Π°Ρ‚ΡŒΠΈ Π²Ρ‹ ΡƒΠ·Π½Π°Π»ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

  • <string>.split (sep, maxsplit)
    Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку <string> ΠΏΠΎ вхоТдСниям раздСлитСля sep, maxsplit Ρ€Π°Π·.
  • <sep>.join(<iterable>) ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ подстроки Π² ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ <iterable>, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ <sep> Π² качСствС раздСлитСля.

НадСюсь, Π²Π°ΠΌ Π±Ρ‹Π»Π° ΠΏΠΎΠ»Π΅Π·Π½Π° данная ΡΡ‚Π°Ρ‚ΡŒΡ. УспСхов Π² написании ΠΊΠΎΠ΄Π°!

Π‘ΠΎΠ»Π΅Π΅ 50 Π·Π°Π΄Π°Ρ‡ Π½Π° строки Π² нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ ΠΊΠ°Π½Π°Π»Π΅ Python Turbo. Π£ΡŽΡ‚Π½ΠΎΠ΅ сообщСство Python Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ Β«Python String split() and join() Methods – Explained with ExamplesΒ».

str.split Π² Python

16 jul. 15 19:36 13 dec. 17 16:28

Π Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ строку Π½Π° части, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ эти части списком. НаправлСниС разбиСния: слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ.

str.split(sep[, maxsplit])

-> list

sep=None — Π‘Ρ‚Ρ€ΠΎΠΊΠ°-Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ трСбуСтся Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку. ΠœΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½, Ρ‚Π°ΠΊ ΠΈ нСсколько символов. Если Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ разбиСния, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ считаСтся ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½Ρ‹Ρ… символов.

maxsplit=-1 — МаксимальноС количСство Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ трСбуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ. Если ‘-1’, Ρ‚ΠΎ количСство Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΉ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ.


Если ΡƒΠΊΠ°Π·Π°Π½ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ пустой строки Π²Π΅Ρ€Π½Ρ‘Ρ‚ список с СдинствСнным элСмСнтом β€” пустой строкой: [''].

    '1,2,3'.split(',')  # ['1', '2', '3']
'1,2,3'.split(',', maxsplit=1) # ['1', '2,3']

'1,2,,3,'.split(',') # ['1', '2', '', '3', '']
# сравнитС с '1 2 3'.split()

Если Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ пустой строки Π²Π΅Ρ€Π½Ρ‘Ρ‚ пустой список: [].

    '1 2 3'.split()  # ['1', '2', '3']
'1 2 3'.split(maxsplit=1) # ['1', '2 3']

' 1 2 3 '.split() # ['1', '2', '3']
# сравнитС с '1,2,,3,'.split(',')


Π’ случаях, ΠΊΠΎΠ³Π΄Π° трСбуСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ строки происходило справа Π½Π°Π»Π΅Π²ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ str.rsplit. Когда трСбуСтся Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ строку Π½Π° Ρ‚Ρ€ΠΈ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ (Π½Π°Ρ‡Π°Π»ΠΎ, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ, ΠΊΠΎΠ½Π΅Ρ†), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ str. partition.

Π‘ΠΈΠ½ΠΎΠ½ΠΈΠΌΡ‹ поиска: str.split, str, split, Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‹Π·Π΄ΡˆΠ΅