Π Π°Π±ΠΎΡ‚Π° со строками python: Π Π°Π±ΠΎΡ‚Π° со строками Π² Python β€” Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

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

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ ΠΏΠΎ Python. Π’Π΅ΠΌΠ° 8. Π Π°Π±ΠΎΡ‚Π° со строками

ОглавлСниС

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

python / Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊ

  • Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…: str

  • ΠšΠΎΠ½Ρ‚Π΅Π½Ρ‚: Вопросы (6ΡˆΡ‚) + Π·Π°Π΄Π°Ρ‡ΠΈ (6ΡˆΡ‚)

ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ°

Π’Π΅ΠΌΠ° 7. Π Π°Π±ΠΎΡ‚Π° с мноТСствами

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ°

Π’Π΅ΠΌΠ° 9. УсловныС
выраТСния

ОглавлСниС

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Рассмотрим строки ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π² Python. ОпишСм основныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ свойства строк, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡.

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ

Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹

6 вопросов ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ «Π‘Ρ‚Ρ€ΠΎΠΊΠΈ» + ΠΎΡ‚Π²Π΅Ρ‚Ρ‹

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ

Условия Π·Π°Π΄Π°Ρ‡

6 Π·Π°Π΄Π°Ρ‡ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ Π΄Π²ΡƒΡ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ слоТности: Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΈ *ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ

РСшСния Π·Π°Π΄Π°Ρ‡

ΠŸΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π²Ρ‹ΡˆΠ΅ Π·Π°Π΄Π°Ρ‡

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² языкС ΠΏΠΈΡ‚ΠΎΠ½ ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСизмСняСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ запуска скрипта ячСйка памяти, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ссылаСтся строка, Π½Π΅ мСняСтся. Из этого слСдуСт, Ρ‡Ρ‚ΠΎ символы этого Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒΡΡ.

Они ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ большоС количСство встроСнных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Π›ΡŽΠ±Ρ‹Π΅ дСйствия Π½Π°Π΄ строками Π½Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ ΠΈΡ…, Π° ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

Для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Π½ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ: срСзы, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ строк, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ основныС свойства.

Вопросы ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ «Π Π°Π±ΠΎΡ‚Π° со строками»

Π—Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ «Π Π°Π±ΠΎΡ‚Π° со строками»

РСшСниС

РСшСниС

РСшСниС

РСшСниС

РСшСниС

РСшСниС

РСшСния

Π—Π°Π΄Π°Ρ‡Π° 1. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ

УсловиС

ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ search_substr(subst, st), которая ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ 2 строки ΠΈ опрСдСляСт, имССтся Π»ΠΈ подстрока subst Π² строкС st. 
Π’ случаС нахоТдСния подстроки, возвращаСтся Ρ„Ρ€Π°Π·Π° Β«Π•ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚!Β», Π° ΠΈΠ½Π°Ρ‡Π΅ «Мимо!Β». 
Π”ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ совпадСниС нСзависимо ΠΎΡ‚ рСгистра ΠΎΠ±Π΅ΠΈΡ… строк.

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ задания Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ строковыми ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ lower() ΠΈ find(). Π‘Ρ‚ΠΎΠΈΡ‚ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ find() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ -1 Π² случаС нСнахоТдСния Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ элСмСнта.

РСшСниС – IDE

def search_substr(subst, st):
    if subst.lower() in st.lower():
        	return 'Π•ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚!'
    else:
    	return 'Мимо!'


# ВСсты
print(search_substr('Кол', 'ΠΊΠΎΠ›ΠΎΠΊΠžΠ»'))
print(search_substr('Колобок', 'колобоК'))
print(search_substr('Кол', 'Плов'))

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния

Π•ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚!
Π•ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚!
Мимо!

Π—Π°Π΄Π°Ρ‡Π° 2. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ

УсловиС

ВрСбуСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ индСксы ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ послСднСго вхоТдСния Π±ΡƒΠΊΠ²Ρ‹ Π² строкС. 
Для этого Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ first_last(letter, st), Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΡƒΡŽ 2 ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°: letter – искомый символ, st – цСлСвая строка. 
Π’ случаС отсутствия Π±ΡƒΠΊΠ²Ρ‹ Π² строкС, Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (None, None), Ссли ΠΆΠ΅ ΠΎΠ½Π° Π΅ΡΡ‚ΡŒ, Ρ‚ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ послСднСго индСкса этого символа.

РСшСниС Π·Π°Π΄Π°Ρ‡ΠΈ сводится ΠΊ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ find() ΠΈ rfind().

РСшСниС — IDE

def first_last(letter, st):
    first = st.find(letter)
    if first < 0:
        return None, None
    last = st.rfind(letter)
    return first, last



# ВСсты
print(first_last('a', 'abba'))
print(first_last('a', 'abbaaaab'))
print(first_last('a', 'a'))
print(first_last('a', 'spring'))

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния

(0, 3)
(0, 6)
(0, 0)
(None, None)

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Python. Π£Ρ€ΠΎΠΊ 4. Π Π°Π±ΠΎΡ‚Π° со строками

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² Python. Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…: str. Учимся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ основныС дСйствия Π½Π°Π΄ строковым Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Π² Python: созданиС, экранированиС, конкатСнация ΠΈ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, срСзы, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, строковыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹.

Π—Π°Π΄Π°Ρ‡Π° 3. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ

УсловиС

На основании прСдоставлСнного ΠΎΡ‚Ρ€Ρ‹Π²ΠΊΠ° тСкста ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ 3 Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто встрСчаСмых символа Π² Π½Π΅ΠΉ. 
ΠŸΡ€ΠΎΠ±Π΅Π»Ρ‹ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ подсчСтС).  
Для вывСдСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² вычислСний трСбуСтся Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ top3(st). 
Π˜Ρ‚ΠΎΠ³ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ строки: «символ – количСство Ρ€Π°Π·, символ – количСство раз…».

Для простоты подсчСта количСства Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ символов ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Counter ΠΈΠ· модуля collections.

РСшСниС – IDE

from collections import Counter


def top3(st):
    counter_top3 = Counter(st.replace(' ', '')).most_common(3)
    return ', '.join([f'{letter} - {cnt}' for letter, cnt in counter_top3])


# ВСсты
print(top3('Π£Π»Ρ‹Π±ΠΊΠΎΠΉ ясною ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π° Бквозь сон встрСчаСт ΡƒΡ‚Ρ€ΠΎ Π³ΠΎΠ΄Π° БинСя Π±Π»Π΅Ρ‰ΡƒΡ‚ нСбСса. Π•Ρ‰Π΅ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹Π΅, лСса'))
print(top3('АаА'))
print(top3('Π“ΠΎΠ»ΠΎΠ²Π° Π΄ΡƒΠΌΠ°Π»Π°'))

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния

Π΅ - 9, ΠΎ - 8, Ρ€ - 6
А - 2, а - 1
А - 3, о - 2, л - 2

Π—Π°Π΄Π°Ρ‡Π° 4. *ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ

УсловиС

Николай Ρ€Π΅ΡˆΠΈΠ» Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ старыС Π²Ρ€Π΅ΠΌΠ΅Π½Π°.
Π’ своС врСмя Π±Ρ‹Π»ΠΎ ΠΌΠΎΠ΄Π½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ сообщСния с Ρ‡Π΅Ρ€Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈΡΡ Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ ΠΈ ΠΌΠ°Π»ΠΎΠΉ Π±ΡƒΠΊΠ²Π°ΠΌΠΈ. Он Π·Π°Ρ…ΠΎΡ‚Π΅Π» изобрСсти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ с любой прСдоставлСнной строкой Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΠ΅. Π’Π°ΡˆΠ° Π·Π°Π΄Π°Ρ‡Π°: ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ Ρ‚Ρ€ΡƒΠ΄ студСнта camel(st) с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈ Π·Π½Π°ΠΊΠΈ прСпинания Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΡ€Ρ‚ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ рСгистра символов (ΠΎΠ½ΠΈ Π² этом процСссС Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ, Π½ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ Π² ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠΉ строкС).

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² lower() ΠΈ upper() ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ достаточно просто.

РСшСниС — IDE

def camel(st):
    new_st = ''
    letter_counter = 0
    for index, val in enumerate(st):
        if val.isalpha():
            if letter_counter % 2 == 0:
                new_st += val.upper()
            else:
                new_st += val.lower()
            letter_counter += 1
        else:
            new_st += val
    return new_st


# ВСсты
print(camel('Π£Ρ‚Ρ€ΠΎΠΌ!! Π±Ρ‹Π»ΠΎ! солнСчно!!!!'))
print(camel('КРАБОВА)))'))
print(camel('Π΄ΠΎΠΆΠ΄Π»ΠΈΠ²Π«Π™, Π²Π΅Ρ‡Π΅Π ??'))

И Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ:

РСшСниС — IDE

CASE_FUNCTIONS = [str. upper, str.lower]

def camel(st):

    index = 0
    camel_st = ''
    for sym in st:
        if sym.isalpha():
            camel_st += CASE_FUNCTIONS[index % 2](sym)
            index += 1
        else:
            camel_st += sym

    return camel_st

# ВСсты
print(camel('Π£Ρ‚Ρ€ΠΎΠΌ!! Π±Ρ‹Π»ΠΎ! солнСчно!!!!'))
print(camel('КРАБОВА)))'))
print(camel('Π΄ΠΎΠΆΠ΄Π»ΠΈΠ²Π«Π™, Π²Π΅Ρ‡Π΅Π ??'))


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния

Π£Ρ‚Π ΠΎΠœ!! бЫлО! сОлНСЧнО!!!!
ΠšΡ€ΠΡΠžΡ‚Π)))
Π”ΠΎΠ–Π΄Π›ΠΈΠ’Ρ‹Π™, Π²Π•Ρ‡Π•Ρ€??

Π—Π°Π΄Π°Ρ‡Π° 5. * ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ

УсловиС

Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ считаСт, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° тСкст ΠΏΠΈΡˆΡƒΡ‚ Π² скобках (ΠΊΠ°ΠΊ Π²ΠΎΡ‚ Ρ‚ΡƒΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), Π΅Π³ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ. 
Π’ΠΎΡ‚ ΠΈ Π½Π°Π΄ΡƒΠΌΠ°Π» ΠΎΠ½ сущСствСнно ΡƒΠΊΠΎΡ€ΠΎΡ‚ΠΈΡ‚ΡŒ врСмя чтСния, написав Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ всС, Ρ‡Ρ‚ΠΎ располоТСно Π²Π½ΡƒΡ‚Ρ€ΠΈ скобок. 
ΠŸΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅ Π»Π΅Π½ΠΈΠ²ΠΎΠΌΡƒ Π”ΠΈΠΌΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ shortener(st), которая Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ всС, Ρ‡Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ скобок ΠΈ сами эти скобки, возвращая ΠΎΡ‡ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ тСкст (скобки ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ). 

ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ самая послСдняя ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π°Ρ скобка Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ послС сСбя Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ.

РСшСниС — IDE

def shortener(st):
    while '(' in st or ')' in st:
        left = st.rfind('(')
        right = st.find(')', left)
        st = st.replace(st[left:right + 1], '')
    return st


# ВСсты
print(shortener('Падал(лишнСС (лишнСС) лишнСС) ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎΠ΄Π½ΠΈΠΉ снСг (лишнСС)'))
print(shortener('(лишнСС(лишнСС))Падал ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎΠ΄Π½ΠΈΠΉ (лишнСС(лишнСС(лишнСС)))снСг'))


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния

Падал ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎΠ΄Π½ΠΈΠΉ снСг 
Падал ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎΠ΄Π½ΠΈΠΉ снСг

Π—Π°Π΄Π°Ρ‡Π° 6. * ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ

УсловиС

АлСксандр Ρ€Π΅ΡˆΠΈΠ» ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² тСкстС BACKSPACE (Ρ‚.Π΅. ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ послСднСго символа). 
Он ΠΏΠΎΠ΄ΡƒΠΌΠ°Π», Ρ‡Ρ‚ΠΎ символ Β«@Β» ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ для этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. 
ВсСм своим Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌ ΠΎΠ½ Π΄Π°Π» строки Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«Π³Ρ€@ΠΎΠΎ@Π»ΠΊ@ΠΎΡ†@Π²Π°Β»), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠΎΠΌΡƒ удастся Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ cleaned_str(st), Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΡƒΡŽ строку Π² Π΅Π΅ чистом Π²ΠΈΠ΄Π΅. 

Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρƒ строк Π½Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° pop(), Π½ΡƒΠΆΠ½ΠΎ сначала ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² список, Π° ΠΏΠΎΡ‚ΠΎΠΌ провСсти Π½ΡƒΠΆΠ½Ρ‹Π΅ манипуляции.

РСшСниС — IDE

def cleaned_str(st):
    clean_lst = []
    for symbol in st:
        if symbol == '@' and clean_lst:
            clean_lst.pop()
        elif symbol != '@':
            clean_lst.append(symbol)
    return ''.join(clean_lst)


# ВСсты

print(cleaned_str('Π³Ρ€@ΠΎΠΎ@Π»ΠΊ@ΠΎΡ†@Π²Π°'))
print(cleaned_str('сварка@@@@@Π»ΠΎΠ±@Π½Ρƒ@'))


Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния

Π³ΠΎΠ»ΠΎΠ²Π°
слон


ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ°

Π’Π΅ΠΌΠ° 7. Π Π°Π±ΠΎΡ‚Π° с мноТСствами

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ°

Π’Π΅ΠΌΠ° 9. УсловныС
выраТСния

Как Π²Π°ΠΌ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»?

ΠŸΠžΠšΠΠ—ΠΠ’Π¬ ΠšΠžΠœΠœΠ•ΠΠ’ΠΠ Π˜Π˜

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Python.

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ ΠΏΠΎ Python. Π’Π΅ΠΌΠ° 2. Числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ ΠΏΠΎ Python. Π’Π΅ΠΌΠ° 3. ЛогичСский Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ ΠΏΠΎ Python.

Π’Π΅ΠΌΠ° 5. Π Π°Π±ΠΎΡ‚Π° со словарями

Π—Π°Π΄Π°Ρ‡Π½ΠΈΠΊ ΠΏΠΎ Python. Π’Π΅ΠΌΠ° 7. Π Π°Π±ΠΎΡ‚Π° с мноТСствами

41 вопрос ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ со строками Π² Python / Π₯Π°Π±Ρ€

Π― Π½Π°Ρ‡Π°Π» вСсти список Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ€Π΅ΡˆΠ°Ρ алгоритмичСскиС Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° LeetCode ΠΈ HackerRank.

Π‘Ρ‹Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ программистом β€” это Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ всС встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ΠΊΠΎΠ΅Π³ΠΎ языка. Но это Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ β€” бСсполСзноС Π΄Π΅Π»ΠΎ. ОсобСнно β€” Ссли Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΠΊ собСсСдованию.

Π₯ΠΎΡ‡Ρƒ сСгодня ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ со всСми ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΌΠΎΠ΅ΠΉ ΡˆΠΏΠ°Ρ€Π³Π°Π»ΠΊΠΎΠΉ ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ со строками Π² Python. Π― ΠΎΡ„ΠΎΡ€ΠΌΠΈΠ» Π΅Ρ‘ Π² Π²ΠΈΠ΄Π΅ списка вопросов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ для самопровСрки. Π₯отя эти вопросы ΠΈ Π½Π΅ тянут Π½Π° ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ Π½Π° собСсСдованиях, ΠΈΡ… освоСниС ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ.



1. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ?

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ is Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True Π² Ρ‚ΠΎΠΌ случаС, Ссли Π² Π΄Π²Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ записана ссылка Π½Π° ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ памяти. ИмСнно ΠΎΠ± этом ΠΈΠ΄Ρ‘Ρ‚ Ρ€Π΅Ρ‡ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π΅ ΠΎΠ± «идСнтичности ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²Β».

НС стоит ΠΏΡƒΡ‚Π°Ρ‚ΡŒ is ΠΈ ==. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ == провСряСт лишь равСнство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

animals Β  Β  Β  Β  Β  = ['python','gopher']
more_animalsΒ  Β  Β  = animals
print(animals == more_animals) #=> True
print(animals is more_animals) #=> True
even_more_animals = ['python','gopher']
print(animals == even_more_animals) #=> True
print(animals is even_more_animals) #=> False
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ animals ΠΈ even_more_animals
Π½Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹, хотя ΠΈ Ρ€Π°Π²Π½Ρ‹ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, сущСствуСт функция id(), которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ адрСса памяти, связанного с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠŸΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Π΄Π²ΡƒΡ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π°Π½ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.

name = 'object'
id(name)
#=> 4408718312

2. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ слово Π² строкС начинаСтся с Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹?

БущСствуСт строковый ΠΌΠ΅Ρ‚ΠΎΠ΄ istitle(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ провСряСт, начинаСтся Π»ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ слово Π² строкС с Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹.

print( 'The Hilton'.istitle() ) #=> True
print( 'The dog'.istitle() ) #=> False
print( 'sticky rice'.istitle() ) #=> False

3. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ строку Π½Π° Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² Π½Π΅Ρ‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ строки?

БущСствуСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ in, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π΅Ρ€Π½Ρ‘Ρ‚ True Π² Ρ‚ΠΎΠΌ случаС, Ссли строка содСрТит ΠΈΡΠΊΠΎΠΌΡƒΡŽ подстроку.

print( 'plane' in 'The worlds fastest plane' ) #=> True
print( 'car' in 'The worlds fastest plane' ) #=> False

4. Как Π½Π°ΠΉΡ‚ΠΈ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки Π² строку?

Π•ΡΡ‚ΡŒ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΡ… индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки Π² строку. Π­Ρ‚ΠΎ β€” find() ΠΈ index(). Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ особСнности.

ΠœΠ΅Ρ‚ΠΎΠ΄ find() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ -1 Π² Ρ‚ΠΎΠΌ случаС, Ссли искомая подстрока Π² строкС Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°.

'The worlds fastest plane'.find('plane') #=> 19
'The worlds fastest plane'.find('car') #=> -1
ΠœΠ΅Ρ‚ΠΎΠ΄ index() Π² ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ситуации выбрасываСт ΠΎΡˆΠΈΠ±ΠΊΡƒ ValueError.

'The worlds fastest plane'.index('plane') #=> 19
'The worlds fastest plane'.index('car') #=> ValueError: substring not found

5. Как ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ количСство символов Π² строкС?

Ѐункция len() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ строки.

len('The first president of the organization..') #=> 41

6. Как ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎ, сколько Ρ€Π°Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ символ встрСчаСтся Π² строкС?

ΠžΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° этот вопрос Π½Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ count(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ Π² строку Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ символа.

'The first president of the organization..'.count('o') #=> 3

7. Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ строки Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ Π±ΡƒΠΊΠ²ΠΎΠΉ?

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ capitalize().

'florida dolphins'.capitalize() #=> 'Florida dolphins'

8. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ f-строки ΠΈ ΠΊΠ°ΠΊ ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ?

Π’ Python 3.6 появилась новая Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ β€” Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Β«f-строки». Π˜Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΡΡ†ΠΈΡŽ строк. ИспользованиС f-строк Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° format().

ΠŸΡ€ΠΈ объявлСнии f-строк ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΎΠΉ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π±ΡƒΠΊΠ²Π° f.

name = 'Chris'
food = 'creme brulee'
f'Hello. My name is {name} and I like {food}.'
#=> 'Hello. My name is Chris and I like creme brulee'

9. Как Π½Π°ΠΉΡ‚ΠΈ подстроку Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΉ части строки?

ΠœΠ΅Ρ‚ΠΎΠ΄ index() ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ, пСрСдавая Π΅ΠΌΡƒ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ индСкс Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° строки, Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ поиск подстроки.

'the happiest person in the whole wide world.'.index('the',10,44)
#=> 23
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ΡˆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Π°Ρ конструкция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 23, Π° Π½Π΅ 0, ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ Π±Ρ‹, Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΡŒ ΠΌΡ‹ поиск.

'the happiest person in the whole wide world.'.index('the')
#=> 0

10. Как Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ содСрТимоС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² строку, воспользовавшись ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ format()?

ΠœΠ΅Ρ‚ΠΎΠ΄ format() позволяСт Π΄ΠΎΠ±ΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ², сходных с Ρ‚Π΅ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ, примСняя f-строки. ΠŸΡ€Π°Π²Π΄Π°, я полагаю, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ format() Π½Π΅ Ρ‚Π°ΠΊ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ приходится ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² format().

difficulty = 'easy'
thing = 'exam'
'That {} was {}!'.format(thing, difficulty)
#=> 'That exam was easy!'

11. Как ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² строкС содСрТатся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†ΠΈΡ„Ρ€Ρ‹?

БущСствуСт ΠΌΠ΅Ρ‚ΠΎΠ΄ isnumeric(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True Π² Ρ‚ΠΎΠΌ случаС, Ссли всС символы, входящиС Π² строку, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ.

'80000'.isnumeric() #=> True
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ этот ΠΌΠ΅Ρ‚ΠΎΠ΄, ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π½Π°ΠΊΠΈ прСпинания ΠΎΠ½ Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ Π½Π΅ считаСт.

'1.0'.isnumeric() #=> False

12. Как Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ строку ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ символу?

Π—Π΄Π΅ΡΡŒ Π½Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ split(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ строку ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ символу ΠΈΠ»ΠΈ ΠΏΠΎ нСскольким символам.

'This is great'.split(' ')
#=> ['This', 'is', 'great']
'not--so--great'.split('--')
#=> ['not', 'so', 'great']

13.

Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ строку Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° составлСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· строчных Π±ΡƒΠΊΠ²? ΠœΠ΅Ρ‚ΠΎΠ΄ islower() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли строка составлСна ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ· строчных Π±ΡƒΠΊΠ².

'all lower case'.islower() #=> True
'not aLL lowercase'.islower() # False

14. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ строка начинаСтся со строчной Π±ΡƒΠΊΠ²Ρ‹?

Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ это ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹Π·Π²Π°Π² Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ islower() для ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа строки.

'aPPLE'[0].islower() #=> True

15. МоТно Π»ΠΈ Π² Python ΠΏΡ€ΠΈΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ†Π΅Π»ΠΎΠ΅ число ΠΊ строкС?

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… языках это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ Python ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ выполнСния ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π°Π½Π° ошибка TypeError.

'Ten' + 10 #=> TypeError

16. Как Β«ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΒ» строку?

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Β«ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΒ» строку, Π΅Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ, прСдставив Π² Π²ΠΈΠ΄Π΅ списка символов, Β«ΠΏΠ΅Ρ€Π΅Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΒ» список, ΠΈ, объСдинив Π΅Π³ΠΎ элСмСнты, ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ строку.

''. join(reversed("hello world"))
#=> 'dlrow olleh'

17. Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ список строк Π² ΠΎΠ΄Π½Ρƒ строку, элСмСнты ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ дСфисами?

ΠœΠ΅Ρ‚ΠΎΠ΄ join() ΡƒΠΌΠ΅Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ элСмСнты списков Π² строки, раздСляя ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ строки с использованиСм Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ символа.

'-'.join(['a','b','c'])
#=> 'a-b-c'

18. Как ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всС символы строки входят Π² ASCII?

ΠœΠ΅Ρ‚ΠΎΠ΄ isascii() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True Π² Ρ‚ΠΎΠΌ случаС, Ссли всС символы, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π² строкС, входят Π² ASCII.

print( 'Γ‚'.isascii() ) #=> False
print( 'A'.isascii() ) #=> True

19. Как привСсти всю строку ΠΊ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ ΠΈΠ»ΠΈ Π½ΠΈΠΆΠ½Π΅ΠΌΡƒ рСгистру?

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этих Π·Π°Π΄Π°Ρ‡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ upper() ΠΈ lower(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, соотвСтствСнно, приводят всС символы строк ΠΊ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ ΠΈ Π½ΠΈΠΆΠ½Π΅ΠΌΡƒ рСгистрам.

sentence = 'The Cat in the Hat'
sentence.upper() #=> 'THE CAT IN THE HAT'
sentence.lower() #=> 'the cat in the hat'

20.

Как ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈ послСдний символы строки ΠΊ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ рСгистру? Π’ΡƒΡ‚, ΠΊΠ°ΠΊ ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ символам строки ΠΏΠΎ индСксам. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² Python ΠΈΠΌΠΌΡƒΡ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹, поэтому ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ сборкой Π½ΠΎΠ²ΠΎΠΉ строки Π½Π° основС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ.

animal = 'fish'
animal[0].upper() + animal[1:-1] + animal[-1].upper()
#=> 'FisH'

21. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ строку Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° составлСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· прописных Π±ΡƒΠΊΠ²?

Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ isupper(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° ΡƒΠΆΠ΅ рассмотрСнный islower(). Но isupper() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли вся строка состоит ΠΈΠ· прописных Π±ΡƒΠΊΠ².

'Toronto'.isupper() #=> False
'TORONTO'.isupper() #= True

22. Π’ ΠΊΠ°ΠΊΠΎΠΉ ситуации Π²Ρ‹ воспользовались Π±Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ splitlines()?

ΠœΠ΅Ρ‚ΠΎΠ΄ splitlines() раздСляСт строки ΠΏΠΎ символам Ρ€Π°Π·Ρ€Ρ‹Π²Π° строки.

sentence = "It was a stormy night\nThe house creeked\nThe wind blew. "
sentence.splitlines()
#=> ['It was a stormy night', 'The house creeked', 'The wind blew.']

23. Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ срСз строки?

Для получСния срСза строки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ синтаксичСская конструкция ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²ΠΈΠ΄Π°:

string[start_index:end_index:step]
Π—Π΄Π΅ΡΡŒ step β€” это шаг, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ символы строки ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° start_index:end_index. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ step, Ρ€Π°Π²Π½ΠΎΠ΅ 3, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Ρ‘Π½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ символ.

string = 'I like to eat apples'
string[:6] #=> 'I like'
string[7:13] #=> 'to eat'
string[0:-1:2] #=> 'Ilk oetape' (ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ 2-ΠΉ символ)

24. Как ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ΅ число Π² строку?

Для прСобразования числа Π² строку ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ конструктором str().

str(5) #=> '5'

25. Как ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ строка содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½Ρ‹Π΅ символы?

ΠœΠ΅Ρ‚ΠΎΠ΄ isalpha() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True Π² Ρ‚ΠΎΠΌ случаС, Ссли всС символы Π² строкС ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±ΡƒΠΊΠ²Π°ΠΌΠΈ.

'One1'.isalpha() #=> False
'One'.isalpha() #=> True

26. Как Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΉ строкС Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π° Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ всС вхоТдСния Π½Π΅ΠΊΠΎΠ΅ΠΉ подстроки?

Если ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· экспорта модуля, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с рСгулярными выраТСниями, Ρ‚ΠΎ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ replace().

sentence = 'Sally sells sea shells by the sea shore'
sentence.replace('sea', 'mountain')
#=> 'Sally sells mountain shells by the mountain shore'

27. Как Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ символ строки с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ASCII-ΠΊΠΎΠ΄ΠΎΠΌ?

Если Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ASCII-ΠΊΠΎΠ΄Ρ‹ элСмСнтов, Ρ‚ΠΎ окаТСтся, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎ прописныС Π±ΡƒΠΊΠ²Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ мСньшиС ΠΊΠΎΠ΄Ρ‹, Ρ‡Π΅ΠΌ строчныС. Ѐункция min() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ символ строки, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ наимСньший ΠΊΠΎΠ΄.

min('strings') #=> 'g'

28. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ строку Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Π½Π΅ΠΉ содСрТатся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ символы?

Π’ состав Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… символов входят Π±ΡƒΠΊΠ²Ρ‹ ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹. Для ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° этот вопрос ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ isalnum().

'Ten10'.isalnum() #=> True
'Ten10.'.isalnum() #=> False

29. Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° строки (ΠΈΠ· Π΅Ρ‘ Π»Π΅Π²ΠΎΠΉ части), ΠΈΠ· Π΅Ρ‘ ΠΊΠΎΠ½Ρ†Π° (ΠΈΠ· ΠΏΡ€Π°Π²ΠΎΠΉ части), ΠΈΠ»ΠΈ с ΠΎΠ±Π΅ΠΈΡ… сторон строки?

Π—Π΄Π΅ΡΡŒ Π½Π°ΠΌ пригодятся, соотвСтствСнно, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ lstrip(), rstrip() ΠΈ strip().

string = 'Β  string of whitespaceΒ  Β  '
string.lstrip() #=> 'string of whitespaceΒ  Β  '
string.rstrip() #=> 'Β  string of whitespace'
string.strip() #=> 'string of whitespace'

30. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ строка начинаСтся с Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ символов, ΠΈΠ»ΠΈ заканчиваСтся Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ символов?

Для ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° этот вопрос ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ±Π΅Π³Π½ΡƒΡ‚ΡŒ, соотвСтствСнно, ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ startswith() ΠΈ endswith().

city = 'New York'
city.startswith('New') #=> True
city.endswith('N') #=> False

31. Как Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ строку Π² ASCII?

ΠœΠ΅Ρ‚ΠΎΠ΄ encode() позволяСт ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ строки с использованиСм Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° utf-8. Если Π½Π΅ΠΊΠΈΠΉ символ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ прСдставлСн с использованиСм Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π°Π½Π° ошибка UnicodeEncodeError.

'Fresh Tuna'.encode('ascii')
#=> b'Fresh Tuna'
'Fresh Tuna Γ‚'.encode('ascii')
#=> UnicodeEncodeError: 'ascii' codec can't encode character '\xc2' in position 11: ordinal not in range(128)

32. Как ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ строка Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹?

Π•ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ isspace(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли строка состоит ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ· ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ².

''.isspace() #=> False
' '.isspace() #=> True
' Β  '.isspace() #=> True
' the '.isspace() #=> False

33. Π§Ρ‚ΠΎ случится, Ссли ΡƒΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ Π½Π΅ΠΊΡƒΡŽ строку Π½Π° 3?

Π‘ΡƒΠ΄Π΅Ρ‚ создана новая строка, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ собой ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку, ΠΏΠΎΠ²Ρ‚ΠΎΡ€Ρ‘Π½Π½ΡƒΡŽ Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π°.

'dog' * 3
# 'dogdogdog'

34. Как привСсти ΠΊ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ рСгистру ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ слова Π² строкС?

БущСствуСт ΠΌΠ΅Ρ‚ΠΎΠ΄ title(), приводящий ΠΊ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌΡƒ рСгистру ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ слова Π² строкС.

'once upon a time'.title() #=> 'Once Upon A Time'

35. Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π΅ строки?

Для объСдинСния строк ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ +.

'string one' + ' ' + 'string two'Β 
#=> 'string one string two'

36. Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ partition()?

ΠœΠ΅Ρ‚ΠΎΠ΄ partition() Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ строку ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ подстрокС. ПослС этого Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ возвращаСтся Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°. ΠŸΡ€ΠΈ этом подстрока, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΠ»Π°ΡΡŒ Ρ€Π°Π·Π±ΠΈΠ²ΠΊΠ°, Ρ‚ΠΎΠΆΠ΅ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ.

sentence = "If you want to be a ninja"
print(sentence.partition(' want '))
#=> ('If you', ' want ', 'to be a ninja')

37. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² Python ΠΈΠΌΠΌΡƒΡ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹. Π§Ρ‚ΠΎ это Π·Π½Π°Ρ‡ΠΈΡ‚?

Π’ΠΎ, Ρ‡Ρ‚ΠΎ строки ΠΈΠΌΠΌΡƒΡ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹, Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ создан ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ строки, ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½. ΠŸΡ€ΠΈ Β«ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈΒ» строк исходныС строки Π½Π΅ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ. ВмСсто этого Π² памяти ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΠ²Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Π”ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ это ΠΌΠΎΠΆΠ½ΠΎ, воспользовавшись Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ id().

proverb = 'Rise each day before the sun'
print( id(proverb) )
#=> 4441962336
proverb_two = 'Rise each day before the sun' + ' if its a weekday'
print( id(proverb_two) )
#=> 4442287440
ΠŸΡ€ΠΈ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ 'Rise each day before the sun' ΠΈ ' if its a weekday' Π² памяти создаётся Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Π½ΠΎΠ²Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. Если Π±Ρ‹ исходный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ мСнялся Π±Ρ‹, Ρ‚ΠΎΠ³Π΄Π° Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±Ρ‹Π» Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.

38. Если ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ строку Π΄Π²Π°ΠΆΠ΄Ρ‹ (записав Π΅Ρ‘ Π² 2 Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅) β€” сколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ создано Π² памяти? 1 ΠΈΠ»ΠΈ 2?

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками ΠΌΠΎΠΆΠ½ΠΎ привСсти Ρ‚Π°ΠΊΠΎΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π°:

animal = 'dog'
pet = 'dog'
ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π² памяти создаётся лишь ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Когда я столкнулся с этим Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π·, ΠΌΠ½Π΅ это Π½Π΅ показалось ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятным. Но этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Python ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌΠΈ строками.

Π”ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ это ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΈΠ±Π΅Π³Π½ΡƒΠ² ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ id().

animal = 'dog'
print( id(animal) )
#=> 4441985688
pet = 'dog'
print( id(pet) )
#=> 4441985688

39. Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ maketrans() ΠΈ translate()?

ΠœΠ΅Ρ‚ΠΎΠ΄ maketrans() позволяСт ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΈΡ… символов Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅, возвращая Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ прСобразования.

ΠœΠ΅Ρ‚ΠΎΠ΄ translate() позволяСт ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π°Π΄Π°Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ для прСобразования строки.

# создаём ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
mapping = str.maketrans("abcs", "123S")
# ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅ΠΌ строку
"abc are the first three letters".translate(mapping)
#=> '123 1re the firSt three letterS'
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² строкС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π° Π·Π°ΠΌΠ΅Π½Π° символов a, b, c ΠΈ s, соотвСтствСнно, Π½Π° символы 1, 2, 3 ΠΈ S.

40. Как ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· строки гласныС Π±ΡƒΠΊΠ²Ρ‹?

Один ΠΈΠ· ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π½Π° этот вопрос Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ символы строки ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°ΡŽΡ‚, ΠΏΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ List Comprehension. Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚, сравнивая с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ, содСрТащим гласныС Π±ΡƒΠΊΠ²Ρ‹. Если символ Π½Π΅ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΊΠΎΡ€Ρ‚Π΅ΠΆ β€” ΠΎΠ½ присоСдиняСтся ΠΊ Π½ΠΎΠ²ΠΎΠΉ строкС.

string = 'Hello 1 World 2'
vowels = ('a','e','i','o','u')
''.join([c for c in string if c not in vowels])
#=> 'Hll 1 Wrld 2'

41. Π’ ΠΊΠ°ΠΊΠΈΡ… ситуациях ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ rfind()?

ΠœΠ΅Ρ‚ΠΎΠ΄ rfind() ΠΏΠΎΡ…ΠΎΠΆ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ find(), Π½ΠΎ ΠΎΠ½, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ find(), просматриваСт строку Π½Π΅ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ, Π° справа Π½Π°Π»Π΅Π²ΠΎ, возвращая индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ вхоТдСния искомой подстроки.

story = 'The price is right said Bob. The price is right.'
story.rfind('is')
#=> 39

Π˜Ρ‚ΠΎΠ³ΠΈ

Π― часто объясняю ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΄Π°ΠΊΡ‚-ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρƒ, Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ Π² возрастС, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ β€” это Π½Π΅ словари, хранящиС описания ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Но Ρ‡Π΅ΠΌ большС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΏΠΎΠΌΠ½ΠΈΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ β€” Ρ‚Π΅ΠΌ мСньшС Π΅ΠΌΡƒ придётся Π³ΡƒΠ³Π»ΠΈΡ‚ΡŒ, ΠΈ Ρ‚Π΅ΠΌ быстрСС ΠΈ приятнСС Π΅ΠΌΡƒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΡΡ. НадСюсь, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π±Π΅Π· Ρ‚Ρ€ΡƒΠ΄Π° ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚Π΅ Π½Π° рассмотрСнныС здСсь вопросы.

Π£Π²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ! Π§Ρ‚ΠΎ, ΠΊΠ°ΡΠ°ΡŽΡ‰Π΅Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строк Π² Python, Π²Ρ‹ посовСтовали Π±Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ готовится ΠΊ собСсСдованию?

Python String β€” строковыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Python

Python Strings ΠΈ строковыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Python

Python string β€” это упорядочСнный Π½Π°Π±ΠΎΡ€ символов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для прСдставлСния ΠΈ хранСния тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ хранятся ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ символы Π² Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ области памяти. Доступ ΠΊ Π½Π΅ΠΌΡƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ с Π΄Π²ΡƒΡ… сторон: Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄. ΠŸΠ΅Ρ€ΡΠΎΠ½Π°ΠΆΠΈ β€” это Π½Π΅ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ символы. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСизмСняСмыми Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² Python, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ послС создания строки Π΅Π΅ нСльзя ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Π’ этом ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ всС ΠΎ строках Π² Python, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ со строками.

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ это Π²ΠΈΠ΄Π΅ΠΎ ΠΎ строковых опСрациях Python:


НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ список всСх Ρ‚Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² этом ΠΌΠΎΠ΄ΡƒΠ»Π΅.

  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ строки Π² Python
  • Доступ ΠΊ символам строки Python
  • ОбновлСниС ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ строки Π² Python
  • Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Python
  • ВстроСнныС строковыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Python ΠΈ строковыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python

Π˜Ρ‚Π°ΠΊ, Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… слов, приступим.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ строки Π² Python

Π’ Python строки ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ с использованиСм ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, Π½ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ‚Ρ€ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для создания строк Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ многострочных строк.

 #созданиС строки с ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌΠΈ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°ΠΌΠΈ
String1 = Β«Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉΒ»
print (String1)#созданиС строки с Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌΠΈ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°ΠΌΠΈ
String2 = Β«Π£Ρ‡Π΅Π±Π½ΠΈΠΊ ΠΏΠΎ PythonΒ»
Print (Strings2) 

ПослС создания строк ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ вывСсти Π½Π° экран с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° print(), ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Π’Ρ‹Π²ΠΎΠ΄ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:

 Π˜Π½Ρ‚Π΅Π»Π»ΠΈΠΏΠ°Ρ‚
Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС ΠΏΠΎ Python 

НачнитС свою ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρƒ Π² Python с идСального курса Python Π² Нью-Π™ΠΎΡ€ΠΊΠ΅ прямо сСйчас!

Доступ ΠΊ символам строки Python

Π’ Python ΠΊ символам строки ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ индСксированиСм. Доступ ΠΊ пСрсонаТам Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ с ΠΎΠ±ΠΎΠΈΡ… Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΉ: Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄. ΠŸΡ€ΡΠΌΠ°Ρ индСксация начинаСтся с 0, 1, 2…. ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ обратная индСксация начинаСтся с βˆ’1, βˆ’2, βˆ’3…, Π³Π΄Π΅ βˆ’1 β€” это послСдний элСмСнт Π² строкС, βˆ’2 β€” прСдпослСдний ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ цСлочислСнный Ρ‚ΠΈΠΏ числа для индСксации; Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ поднята ошибка TypeError.
ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

 String1 = β€˜intellipaat’
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (строка1)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π‘Ρ‚Ρ€ΠΎΠΊΠ°1[0])
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π‘Ρ‚Ρ€ΠΎΠΊΠ°1[1])
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π‘Ρ‚Ρ€ΠΎΠΊΠ°1[-1])


Π’Ρ‹Ρ…ΠΎΠ΄:
Intellipaat
я
Π½
t 

Python β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых вострСбованных Π½Π°Π²Ρ‹ΠΊΠΎΠ² Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅. Π—Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ΡΡŒ Π½Π° нашС Π»ΡƒΡ‡ΡˆΠ΅Π΅ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Python Π² Π‘Π°Π½Π³Π°Π»ΠΎΡ€Π΅ ΠΈ ΡΡ‚Π°Π½ΡŒΡ‚Π΅ экспСртом Python.

ОбновлСниС ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ строки Π² Python

Как ΠΎΠ±ΡΡƒΠΆΠ΄Π°Π»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, строки Π² Python нСизмСняСмы, поэтому ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ символа Π² строкС Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ, Π° это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ символа Π² строкС Π½Π΅ поддСрТиваСтся Π² Python. Π₯отя всю строку ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ. Вся строка удаляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнного ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова del.
ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

 #Код Python для обновлСния всСй строки
String1 = Β«Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ руководство ΠΏΠΎ PythonΒ»
print("исходная строка:")
print (String1)String1 = Β«Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π² IntellipaatΒ»
print("ОбновлСнная строка:")
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (строка1)


Π’Ρ‹Ρ…ΠΎΠ΄:
ΠžΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Π°Ρ строка:
Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ руководство ΠΏΠΎ Python
ОбновлСнная строка:
Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ Π² Intellipaat 

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

 #Код Python для удалСния всСй строки
String1 = Β«Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ руководство ΠΏΠΎ PythonΒ»
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (строка1)
дСль String1
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (строка1)


Π’Ρ‹Ρ…ΠΎΠ΄:
Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ руководство ΠΏΠΎ Python
Traceback (послСдний послСдний Π²Ρ‹Π·ΠΎΠ²):
Π€Π°ΠΉΠ» «», строка 1, Π²
NameError: имя Β«String1Β» Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ 

ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΠΉΡ‚Π΅ΡΡŒ Π½Π° самый ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ½Π»Π°ΠΉΠ½-курс Python Π² Π’ΠΎΡ€ΠΎΠ½Ρ‚ΠΎ ΠΈ сдСлайтС Π±Π»Π΅ΡΡ‚ΡΡ‰ΡƒΡŽ ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρƒ прямо сСйчас!

Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

  • Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ (+, *)
  • ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ (<, ><=, >=, ==, !=)
  • ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ члСнства (входящиС, Π½Π΅ входящиС)

Π’Π°Π±Π»ΠΈΡ†Π°: ΠΎΠ±Ρ‰ΠΈΠ΅ строковыС константы ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ОписаниС
с1 = β€˜ ’ ΠŸΡƒΡΡ‚Π°Ρ строка
s2 = «строка» Π”Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ
Π±Π»ΠΎΠΊ = β€˜β€˜β€˜β€¦β€™β€™β€™ Π‘Π»ΠΎΠΊΠΈ Π² Ρ‚Ρ€ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…
с1 + с2 ΠžΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ
с2 * 3 ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ
с2[i] я=ИндСкс
с2[ΠΈ:ΠΊ] Π‘Ρ€Π΅Π·
Π»Π΅Π½(с2) Π”Π»ΠΈΠ½Π°
Β«ΠΏΠΎΠΏΡƒΠ³Π°ΠΉ %sΒ» % Β«ΠΌΠ΅Ρ€Ρ‚Π²Ρ‹ΠΉΒ» Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строк Π² Python
для x Π² s2 Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ
β€˜m’ Π² s2 ЧлСнство

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ 100% ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅!

ΠžΡΠ²Π°ΠΈΠ²Π°ΠΉΡ‚Π΅ самыС вострСбованныС Π½Π°Π²Ρ‹ΠΊΠΈ прямо сСйчас!

Π’Π°Π±Π»ΠΈΡ†Π°: Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ символы ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ косой Ρ‡Π΅Ρ€Ρ‚Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ОписаниС
\новая строка Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ (ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅)
\Π½ Новая строка (ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ строки ASCII)
\ ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ косая Ρ‡Π΅Ρ€Ρ‚Π° (сохраняСт ΠΎΠ΄ΠΈΠ½ \)
\v Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ°
\’ ΠžΠ΄ΠΈΠ½Π°Ρ€Π½Π°Ρ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ° (сохраняСтся)
\Ρ‚ Π“ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ°
Β» Двойная ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ° (сохраняСт β€œ)
\r Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ
\Π° Π—Π²ΠΎΠ½ΠΎΠΊ ASCII
\Ρ„ ΠŸΠΎΠ΄Π°Ρ‡Π° Π±ΡƒΠΌΠ°Π³ΠΈ
\Π± Π’ΠΎΠ·Π²Ρ€Π°Ρ‚
\0Π₯Π₯ Π’ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ XX
\Π΅ ПобСг (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ)
\Ρ…Π₯Π₯ ШСстнадцатСричноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π₯Π₯
\000 Null (Π½Π΅ заканчиваСтся строка)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ : ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для объСдинСния Π΄Π²ΡƒΡ… строк.

 S1 = Β«ΠΏΡ€ΠΈΠ²Π΅Ρ‚Β»
S2 = Β«Π˜Π½Ρ‚Π΅Π»Π»ΠΈΠΏΠ°Ρ‚Β»
print (S1 + S2) 

Π‘Ρ‚Π°Π½ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ программистом Python с этим ΠΏΠΎΠ»Π½Ρ‹ΠΌ курсом обучСния Python Π² Π‘ΠΈΠ½Π³Π°ΠΏΡƒΡ€Π΅!

ВстроСнныС строковыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Python ΠΈ строковыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python

Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ строковыми функциями Python ΠΈ стандартными встроСнными ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ

Π”Π»ΠΈΠ½Π° строки Python

Ѐункция len() β€” это встроСнная функция языка программирования Python, которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ строки.

 строка = Β«Π˜Π½Ρ‚Π΅Π»Π»ΠΈΠΏΠ°Π°Ρ‚Β»
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π΄Π»ΠΈΠ½Π° (строка))

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚: 11

string = Β«Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ руководство ΠΏΠΎ PythonΒ»
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π΄Π»ΠΈΠ½Π° (строка))

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚: 27 

Python Slice String

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ синтаксис срСза, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСксы, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ΠΌ. ВрСбуСмая Ρ‡Π°ΡΡ‚ΡŒ строки Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½Π°.

 Π° = Β«Π˜Π½Ρ‚Π΅Π»Π»ΠΈΠΏΠ°Π°Ρ‚Β»
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π°[2:5])

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚Π°ΠΊΠΈΠΌΠΈ: Ρ‚Π΅Π» 
Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π°

Если Π²Ρ‹ пропуститС Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа.

 Π° = Β«Π˜Π½Ρ‚Π΅Π»Π»ΠΈΠΏΠ°Π°Ρ‚Β»
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π° [: 5])

Π’Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ: Intel 
Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ с ΠΊΠΎΠ½Ρ†Π°

Если Π²Ρ‹ пропуститС Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа.

 Π° = Β«Π˜Π½Ρ‚Π΅Π»Π»ΠΈΠΏΠ°Π°Ρ‚Β»
Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ (Π°[2:])

Π’Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚: Ρ‚Π΅Π»Π»ΠΈΠΏΠ°Π°Ρ‚ 

Python Reverse String

Π’ Python Π½Π΅Ρ‚ встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для рСвСрсирования Π·Π°Π΄Π°Π½Π½ΠΎΠΉ строки, Π½ΠΎ самый простой способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ срСз, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ начинаСтся Π² ΠΊΠΎΠ½Ρ†Π΅ строки ΠΈ ΠΈΠ΄Π΅Ρ‚ Π½Π°Π·Π°Π΄.

 x = Β«ΠΈΠ½Ρ‚Π΅Π»Π»ΠΈΠ³Π΅Π½Ρ‚Β» [::-1]
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)

Π’Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠΌ: taapilletni 

Career Transition

Python Split String

ΠœΠ΅Ρ‚ΠΎΠ΄ split() позволяСт Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ строку ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ слово строки являСтся элСмСнтом списка.

 x = Β«Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ руководство ΠΏΠΎ PythonΒ»
Π°=x.split()
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π°)

Π’Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠΌ: [β€˜Intellipaat’, β€˜Python’, β€˜Tutorial’] 

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ являСтся любой ΠΏΡ€ΠΎΠ±Π΅Π», Π½ΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈΠ½Π°Ρ‡Π΅.

Python Concatenate Strings

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ + ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для добавлСния ΠΈΠ»ΠΈ объСдинСния строки с Π΄Ρ€ΡƒΠ³ΠΎΠΉ строкой

 a = Β«Python tutorialΒ»
b = Β«ΠΎΡ‚ IntellipaatΒ»
с = а + б
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (с)

Π’Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠΌ: Π£Ρ‡Π΅Π±Π½ΠΈΠΊ ΠΏΠΎ Python ΠΎΡ‚ Intellipaat 

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ строк Π² Python

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ строки Π² Python с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ. Π­Ρ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ значСния Unicode ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ символа строк, начиная с Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ индСкса ΠΈ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° строк. Π’ соотвСтствии с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

 ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Β«ΠŸΠΈΡ‚ΠΎΠ½Β» == Β«ΠŸΠΈΡ‚ΠΎΠ½Β»)
print("ΠŸΠΈΡ‚ΠΎΠ½" < "ΠŸΠΈΡ‚ΠΎΠ½")
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Β«ΠŸΠΈΡ‚ΠΎΠ½Β»> Β«ΠŸΠΈΡ‚ΠΎΠ½Β»)
print("ΠŸΠΈΡ‚ΠΎΠ½" != "ΠŸΠΈΡ‚ΠΎΠ½")

Π’Ρ‹Ρ…ΠΎΠ΄Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚:
Π˜ΡΡ‚ΠΈΠ½Π½Ρ‹ΠΉ
Π˜ΡΡ‚ΠΈΠ½Π½Ρ‹ΠΉ
Π›ΠžΠ–Π¬
Π›ΠΎΠΆΡŒ 

Бписок Python Π² строку

Π’ python с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° .join() любой список ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ Π² строку.

 a = ['Intellipaat', 'Python', 'Π£Ρ‡Π΅Π±Π½ΠΈΠΊ']
Π± = ""
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (b.join (Π°))

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚: Intellipaat Python Tutorial 

Python String Replace

ΠœΠ΅Ρ‚ΠΎΠ΄ replace() Π² Python Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Ρ„Ρ€Π°Π·Ρƒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ.

 a = «МнС нравится ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ»
b = a.replace("ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅", "Python")
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π±)

Π’Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠΌ: МнС нравится Python 

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ строковыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Python:

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄/строковая функция Π² Python ОписаниС строкового ΠΌΠ΅Ρ‚ΠΎΠ΄Π°/строковой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Python
заглавная Π±ΡƒΠΊΠ²Π°() Π”Π΅Π»Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ строки Π·Π°Π³Π»Π°Π²Π½ΠΎΠΉ.
Ρ†Π΅Π½Ρ‚Ρ€ (ΡˆΠΈΡ€ΠΈΠ½Π°, символ заполнСния) Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ, с Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠΌ Π² исходной строкС.
количСство (строка, Π½Π°Ρ‡Π°Π»ΠΎ = 0, ΠΊΠΎΠ½Π΅Ρ† = Π΄Π»ΠΈΠ½Π° (строка)) ΠŸΠΎΠ΄ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚, сколько Ρ€Π°Π· Β«strΒ» встрСчаСтся Π² строкС ΠΈΠ»ΠΈ Π² подстрокС строки, Ссли Π·Π°Π΄Π°Π½Ρ‹ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс Β«begΒ» ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСкс Β«endΒ».
ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° (ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° = ‘UTF-8’, ошибки = ‘строгая’) Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ строки; ΠΏΡ€ΠΈ ошибкС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ выдаСтся ValueError, Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ошибки Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Β«ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ» ΠΈΠ»ΠΈ Β«Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒΒ».
заканчиваСтся с(суффикс, Π½Π°Ρ‡Π°Π»ΠΎ=0, ΠΊΠΎΠ½Π΅Ρ†=Π΄Π»ΠΈΠ½Π°(строка)) ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, заканчиваСтся Π»ΠΈ строка ΠΈΠ»ΠΈ подстрока строки (Ссли Π·Π°Π΄Π°Π½Ρ‹ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс beg ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСкс end) суффиксом; ΠΎΠ½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли это Ρ‚Π°ΠΊ, ΠΈ false Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ (Ρ€Π°Π·ΠΌΠ΅Ρ€ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ = 8) Π Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ Ρ‚Π°Π±ΡƒΠ»ΡΡ†ΠΈΡŽ Π² строкС Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ²; ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 8 ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ, Ссли Ρ€Π°Π·ΠΌΠ΅Ρ€ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½.
Π½Π°ΠΉΡ‚ΠΈ (строка, Π½Π°Ρ‡Π°Π»ΠΎ = 0 ΠΊΠΎΠ½Π΅Ρ† = Π΄Π»ΠΈΠ½Π° (строка)) ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, встрСчаСтся Π»ΠΈ Β«strΒ» Π² строкС ΠΈΠ»ΠΈ Π² подстрокС строки, Ссли Π·Π°Π΄Π°Π½Ρ‹ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс Β«begΒ» ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ индСкс Β«endΒ», ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс, Ссли ΠΎΠ½ Π½Π°ΠΉΠ΄Π΅Π½, ΠΈ βˆ’1 Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
индСкс (строка, Π½Π°Ρ‡Π°Π»ΠΎ = 0, ΠΊΠΎΠ½Π΅Ρ† = Π΄Π»ΠΈΠ½Π° (строка)) Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ find(), Π½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Ссли строка Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°.
ΠΈΠ·Π°Π»ΡŒΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли строка содСрТит хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ символ ΠΈ всС символы Π±ΡƒΠΊΠ²Π΅Π½Π½ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅, ΠΈ false Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
Π°Π»ΡŒΡ„Π°() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли Π² строкС Π΅ΡΡ‚ΡŒ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ символ ΠΈ всС символы Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½Ρ‹Π΅, ΠΈ false Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
isdigit() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли строка содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†ΠΈΡ„Ρ€Ρ‹, ΠΈ false Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
Π½ΠΈΠΆΠ΅() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли Π² строкС Π΅ΡΡ‚ΡŒ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ символ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС, Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ символы Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС, ΠΈ false Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли Π² строкС Π΅ΡΡ‚ΡŒ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ символ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС, Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ символы Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС, ΠΈ false Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
Π΄Π»ΠΈΠ½Π° (строка) Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ строки.
макс(стр) Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ максимальноС количСство Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹Ρ… символов ΠΈΠ· строки str.
ΠΌΠΈΠ½(стр) Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹ΠΉ символ ΠΈΠ· строки str.
Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ() ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ строчныС Π±ΡƒΠΊΠ²Ρ‹ строки Π² прописныС.
rstrip() УдаляСт всС ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅ строки.
раскол(стр=””, число=строка.количСство(стр)) Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для раздСлСния строк Π² Python Π² соотвСтствии с Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ str (ΠΏΡ€ΠΎΠ±Π΅Π», Ссли ΠΎΠ½ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½) ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список подстрок Π² Python
Π»ΠΈΠ½ΠΈΠΈ раздСлСния (число=строка.количСство(‘\n’)) Π Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ строку ΠΏΠΎ символам Π½ΠΎΠ²ΠΎΠΉ строки ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌΠΈ символами Π½ΠΎΠ²ΠΎΠΉ строки.

Π­Ρ‚ΠΎ ΠΏΠΎΠ΄Π²ΠΎΠ΄ΠΈΡ‚ нас ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ этого модуля Π² Python Tutorial . Π’Π΅ΠΏΠ΅Ρ€ΡŒ, Ссли Π²Π°ΠΌ интСрСсно ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Python являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ языком для Π½Π°ΡƒΠΊΠΈ ΠΎ Π΄Π°Π½Π½Ρ‹Ρ…, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Ρ‡Π΅Ρ€Π΅Π· эти Π£Ρ‡Π΅Π±Π½ΠΈΠΊ Python Data Science .
ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с нашим курсом Python Certification , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ½Π΅ ΠΏΡ€Π΅ΡƒΡΠΏΠ΅Ρ‚ΡŒ Π² ΠΌΠΎΠ΅ΠΉ ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Π΅ ΠΈ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ Π½ΠΎΠ²Ρ‹Ρ… высот. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ бСсплатным руководством ΠΏΠΎ всСм Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ вопросам для ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ с Python , созданным отраслСвыми экспСртами.

ΠšΡƒΡ€ΡΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΡ‚ΡŒΡΡ

РасписаниС курсов

3. ΠΠ΅Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Python β€” докумСнтация ΠΏΠΎ Python 3.11.4

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π²Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ отсутствиС подсказок (>>> ΠΈ …): для повторСния ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти всС послС подсказки, ΠΊΠΎΠ³Π΄Π° появится подсказка; строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с подсказкой выводятся ΠΈΠ· ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ подсказка Π½Π° строка сама ΠΏΠΎ сСбС Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ввСсти ΠΏΡƒΡΡ‚ΡƒΡŽ строку; это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ подсказок ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π°, Π½Π°ΠΆΠ°Π² >>> Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ ΠΎΠΊΠ½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. Если ΡΠΊΡ€Ρ‹Ρ‚ΡŒ подсказки ΠΈ Π²Ρ‹Π²ΠΎΠ΄ для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄ строки Π² ваш ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€.

МногиС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π² этом руководствС, Π΄Π°ΠΆΠ΅ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ подскаТитС, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π² Python Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с символа Ρ€Π΅ΡˆΠ΅Ρ‚ΠΊΠΈ, # ΠΈ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° физичСской строки. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π² Π½Π°Ρ‡Π°Π»ΠΎ строки ΠΈΠ»ΠΈ послС ΠΏΡ€ΠΎΠ±Π΅Π»Π° ΠΈΠ»ΠΈ ΠΊΠΎΠ΄Π°, Π½ΠΎ Π½Π΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ строки Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½Ρ‹ΠΉ. Π₯эш-символ Π²Π½ΡƒΡ‚Ρ€ΠΈ строкового Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° β€” это просто Ρ…Π΅Ρˆ-символ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для пояснСния ΠΊΠΎΠ΄Π° ΠΈ Π½Π΅ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Python, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².

НСкоторыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

 # это ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ
spam = 1 # ΠΈ это Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ
          # ... Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ!
text = "# Π­Ρ‚ΠΎ Π½Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ."
 

3.1. ИспользованиС Python Π² качСствС ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ нСсколько простых ΠΊΠΎΠΌΠ°Π½Π΄ Python. ЗапуститС ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΈ Π΄ΠΎΠΆΠ΄ΠΈΡ‚Π΅ΡΡŒ основная подсказка, >>> . (Π­Ρ‚ΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π½ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.)

3.1.1. НомСра

Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ дСйствуСт ΠΊΠ°ΠΊ простой ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€: Π½Π° Π½Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ввСсти Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ½ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Бинтаксис выраТСния прост: ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ +, -, * ΠΈ / ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для выполнСния Π°Ρ€ΠΈΡ„ΠΌΠ΅Ρ‚ΠΈΠΊΠ°; ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки ( () ) ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ. НапримСр:

 >>> 2 + 2
4
>>> 50 - 5*6
20
>>> (50 - 5*6) / 4
5,0
>>> 8 / 5 # Π΄Π΅Π»Π΅Π½ΠΈΠ΅ всСгда Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой
1,6
 

Π¦Π΅Π»Ρ‹Π΅ числа (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 2 , 4 , 20 ) ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ int , с Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 5.0 , 1.6 ) ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ ΠΏΠΎΠΏΠ»Π°Π²ΠΎΠΊ . ΠœΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ большС ΠΎ числовых Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΠΎΠ·ΠΆΠ΅ Π² ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ΅.

Division ( / ) всСгда Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой. Для раздСлСния этаТСй ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ цСлочислСнный Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° //; Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ % :

 >>> 17 / 3 # классичСскоС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой
5.666666666666667
>>>
>>> 17 // 3 # Π΄Π΅Π»Π΅Π½ΠΈΠ΅ этаТа отбрасываСт Π΄Ρ€ΠΎΠ±Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ
5
>>> 17 % 3 # ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ % Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ остаток ΠΎΡ‚ дСлСния
2
>>> 5 * 3 + 2 # частноС * Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ + остаток
17
 

Π‘ Python ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ** для вычислСния стСпСни 1:

 >>> 5 ** 2 # 5 Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π΅
25
>>> 2 ** 7 # 2 Π² стСпСни 7
128
 

Π—Π½Π°ΠΊ равСнства ( = ) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для присвоСния значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ПослС этого Π½Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ отобраТаСтся ΠΏΠ΅Ρ€Π΅Π΄ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ подсказкой:

 >>> ΡˆΠΈΡ€ΠΈΠ½Π° = 20
>>> высота = 5 * 9
>>> ΡˆΠΈΡ€ΠΈΠ½Π° * высота
900
 

Если пСрСмСнная Π½Π΅ Β«ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°Β» (Π½Π΅ присвоСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅), ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π΅Π΅ использования ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π²Ρ‹Π΄Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ:

 >>> n # ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° доступа ΠΊ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ
Traceback (послСдний послСдний Π²Ρ‹Π·ΠΎΠ²):
  Π€Π°ΠΉΠ» "", строка 1, Π² 
NameError: имя Β«nΒ» Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ
 

Полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой; ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ со ΡΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹ΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ цСлочислСнный ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π² число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой:

 >>> 4 * 3,75 - 1
14,0
 

Π’ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ присваиваСтся послСднСС Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½Π½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ _ . Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Python Π² качСствС Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°, нСсколько ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ вычислСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

 >>> Π½Π°Π»ΠΎΠ³ = 12,5/100
>>> Ρ†Π΅Π½Π° = 100,50
>>> Ρ†Π΅Π½Π° * Π½Π°Π»ΠΎΠ³
12,5625
>>> Ρ†Π΅Π½Π° + _
113.0625
>>> Ρ€Π°ΡƒΠ½Π΄(_, 2)
113. 06
 

Π­Ρ‚Π° пСрСмСнная Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΊΠ°ΠΊ доступная Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния. НС Π΄Π΅Π»Π°ΠΉΡ‚Π΅ явно присвойтС Π΅ΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” Π²Ρ‹ Π±Ρ‹ создали Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡƒΡŽ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ с Ρ‚ΠΎ ΠΆΠ΅ имя, ΠΌΠ°ΡΠΊΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ своим магичСским ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ.

Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ int ΠΈ float Python ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ числа, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ДСсятичный ΠΈ Π”Ρ€ΠΎΠ±Π½Ρ‹ΠΉ . Python Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ комплСксных чисСл, ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ суффикс j ΠΈΠ»ΠΈ J для обозначСния ΠΌΠ½ΠΈΠΌΠΎΠΉ части (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 3+5j ).

3.1.2. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ

Помимо чисСл, Python Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ строками, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½Ρ‹ нСсколькими способами. Они ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ( '...' ) ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ( "..." ) с Ρ‚Π΅ΠΌ ΠΆΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ 2. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ \ ΡΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ:

 >>> 'спам яйца' # ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ
спам-яйца
>>> 'Π½Π΅' # ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ \' для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ. ..
"Π½Π΅"
>>> "Π½Π΅" # ...ΠΈΠ»ΠΈ вмСсто этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ
"Π½Π΅"
>>> Β«Π”Π°, β€” сказали ΠΎΠ½ΠΈΒ».
β€” Π”Π°, β€” сказали ΠΎΠ½ΠΈ.
>>> "\"Π”Π°\" сказали ΠΎΠ½ΠΈ."
β€” Π”Π°, β€” сказали ΠΎΠ½ΠΈ.
>>> Β«Π Π°Π·Π²Π΅ Π½Π΅Ρ‚, β€” сказали ΠΎΠ½ΠΈΒ».
Β«Π­Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ, β€” сказали ΠΎΠ½ΠΈΒ».
 

Π’ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π΅ выходная строка Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы ΡΠΊΡ€Π°Π½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ косой Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ. Π₯отя ΠΈΠ½ΠΎΠ³Π΄Π° это ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΈΠ½Π°Ρ‡Π΅, Ρ‡Π΅ΠΌ Π²Π²ΠΎΠ΄ (ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰ΠΈΠ΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ), Π΄Π²Π° строки эквивалСнтны. Π‘Ρ‚Ρ€ΠΎΠΊΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, Ссли строка содСрТит ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½ΡƒΡŽ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΡƒ ΠΈ Π½Π΅ содСрТит Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ, ΠΈΠ½Π°Ρ‡Π΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ. функция print() Π²Ρ‹Π΄Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄, опуская ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ΠΈ пСчатая экранированныС ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы:

 >>> '"НС Ρ‚Π°ΠΊ", - сказали ΠΎΠ½ΠΈ.'
Β«Π­Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ, β€” сказали ΠΎΠ½ΠΈΒ».
>>> print('"НСправда", - сказали ΠΎΠ½ΠΈ.')
«НСт, β€” сказали ΠΎΠ½ΠΈ.
>>> s = 'ΠŸΠ΅Ρ€Π²Π°Ρ строка.\nВторая строка.' # \n ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ строку
>>> s # Π±Π΅Π· print(), \n Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π²Ρ‹Π²ΠΎΠ΄
'ΠŸΠ΅Ρ€Π²Π°Ρ строка. \nВторая строка.'
>>> print(s) # с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ print(), \n создаСт Π½ΠΎΠ²ΡƒΡŽ строку
ΠŸΠ΅Ρ€Π²Π°Ρ линия.
Вторая линия.
 

Если Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ символы с прСфиксом \ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ ΠΊΠ°ΠΊ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… строк , Π΄ΠΎΠ±Π°Π²ΠΈΠ² r ΠΏΠ΅Ρ€Π΅Π΄ пСрвая Ρ†ΠΈΡ‚Π°Ρ‚Π°:

 >>> print('C:\some\name') # здСсь \n ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ строку!
C:\Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅
Π°ΠΌΠ΅
>>> print(r'C:\some\name') # ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π±ΡƒΠΊΠ²Ρƒ r ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°ΠΌΠΈ
C:\Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅\имя
 

Π£ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… строк Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ нюанс: нСобработанная строка ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅Ρ‡Π΅Ρ‚Π½ΠΎΠ΅ количСство \ символов; Π²ΠΈΠ΄Π΅Ρ‚ΡŒ запись часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… вопросов для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΏΡƒΡ‚ΠΈ.

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ нСсколько строк. Один ΠΈΠ· способов β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ: """...""" ΠΈΠ»ΠΈ '''...''' . ΠšΠΎΠ½Π΅Ρ† строк автоматичСски Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² строку, Π½ΠΎ этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² \ Π² ΠΊΠΎΠ½Π΅Ρ† строки. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

 ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ("""\
ИспользованиС: ΡˆΡ‚ΡƒΡ‡ΠΊΠ° [Π’ΠΠ Π˜ΠΠΠ’Π«]
     -h ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ это сообщСниС ΠΎΠ± использовании
     -H hostname Имя хоста для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ
""")
 

ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π²ΠΎΠ΄ (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ новая строка Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°):

 ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅: ΡˆΡ‚ΡƒΡ‡ΠΊΠ° [Π’ΠΠ Π˜ΠΠΠ’Π«]
     -h ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ это сообщСниС ΠΎΠ± использовании
     -H hostname Имя хоста для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ
 

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ (склССны) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° + ΠΈ повторяСтся с * :

 >>> # 3 Ρ€Π°Π·Π° 'un', Π° Π·Π°Ρ‚Π΅ΠΌ 'ium'
>>> 3 * 'un' + 'ium'
'ΡƒΠ½ΡƒΠ½ΡƒΠ½ΠΈΡƒΠΌ'
 

Π”Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ строковых Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ² (Ρ‚.Π΅. Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ) next Π΄Ρ€ΡƒΠ³ ΠΊ Π΄Ρ€ΡƒΠ³Ρƒ автоматичСски ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ.

 >>> 'Пи' 'Ρ‚ΠΎΠ½'
Β«ΠŸΠΈΡ‚ΠΎΠ½Β»
 

Π­Ρ‚Π° функция особСнно ΠΏΠΎΠ»Π΅Π·Π½Π°, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ строки:

 >>> text = ('ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ нСсколько строк Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки'
... Β«Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ соСдинились вмСстС».)
>>> тСкст
Β«ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ нСсколько строк Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΈΡ… вмСстС». 
SyntaxError: Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ синтаксис
 

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΈ Π»ΠΈΡ‚Π΅Ρ€Π°Π», ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ + :

 >>> прСфикс + 'Ρ‚ΠΎΠ½'
Β«ΠŸΠΈΡ‚ΠΎΠ½Β»
 

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ проиндСксированы (подписаны), с ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ символом, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ индСкс 0. НСт ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° пСрсонаТа; символ — это просто строка Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΎΠ΄ΠΈΠ½:

 >>> слово = 'ΠŸΠΈΡ‚ΠΎΠ½'
>>> word[0] # символ Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 0
'П'
>>> word[5] # символ Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 5
'Π½'
 

Π˜Π½Π΄Π΅ΠΊΡΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ числами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ отсчСт справа:

 >>> слово[-1] # послСдний символ
'Π½'
>>> word[-2] # прСдпослСдний символ
'ΠΎ'
>>> слово[-6]
'П'
 

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ -0 совпадаСт с 0, ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с -1.

Помимо индСксации, Ρ‚Π°ΠΊΠΆΠ΅ поддСрТиваСтся Π½Π°Ρ€Π΅Π·ΠΊΠ° . Пока ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ индСксация для получСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… символов Π½Π°Ρ€Π΅Π·ΠΊΠ° позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ подстроку:

 >>> word[0:2] # символы с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 0 (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) Π΄ΠΎ 2 (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ)
'Пи'
>>> word[2:5] # символы со 2-ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) Π΄ΠΎ 5-ΠΉ (ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ)
'хотя'
 

Π˜Π½Π΄Π΅ΠΊΡΡ‹ срСзов ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ; ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ индСкс ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π΅Π½ Π½ΡƒΠ»ΡŽ, ΠΎΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠΉ индСкс ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ соотвСтствуСт Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ Π½Π°Ρ€Π΅Π·Π°Π΅ΠΌΠΎΠΉ строки.

 >>> word[:2] # символ с Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 2 (ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ)
'Пи'
>>> word[4:] # символов с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 4 (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°
'Π½Π°'
>>> word[-2:] # символов ΠΎΡ‚ прСдпослСднСго (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ) Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°
'Π½Π°'
 

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π°Ρ‡Π°Π»ΠΎ всСгда Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ, Π° ΠΊΠΎΠ½Π΅Ρ† всСгда ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ. Π­Ρ‚ΠΎΡ‚ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ s[:i] + s[i:] всСгда Ρ€Π°Π²Π½ΠΎ s :

 >>> слово[:2] + слово[2:]
Β«ΠŸΠΈΡ‚ΠΎΠ½Β»
>>> слово[:4] + слово[4:]
Β«ΠŸΠΈΡ‚ΠΎΠ½Β»
 

Один ΠΈΠ· способов Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ срСзы, β€” ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ индСксы ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ символами, ΠΏΡ€ΠΈ этом Π»Π΅Π²Ρ‹ΠΉ ΠΊΡ€Π°ΠΉ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ 0. Π’ΠΎΠ³Π΄Π° ΠΏΡ€Π°Π²Ρ‹ΠΉ ΠΊΡ€Π°ΠΉ послСднСго символа строки ΠΈΠ· n символов ΠΈΠΌΠ΅Π΅Ρ‚ индСкс n , Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

 +---+---+---+---+---+---+
 | П | Ρƒ | Ρ‚ | Ρ‡ | ΠΎ | Π½ |
 +---+---+---+---+---+---+
 0 1 2 3 4 5 6
-6 -5 -4 -3 -2 -1
 

ΠŸΠ΅Ρ€Π²Π°Ρ строка чисСл ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ индСксов 0…6 Π² строкС; Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ строкС Π΄Π°Π½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы. Π‘Ρ€Π΅Π· ΠΎΡ‚ i Π΄ΠΎ j состоит ΠΈΠ· всСх символов ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π΅Π±Ρ€Π°ΠΌΠΈ, ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ i ΠΈ j , соотвСтствСнно.

Для Π½Π΅ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… индСксов Π΄Π»ΠΈΠ½Π° срСза Ρ€Π°Π²Π½Π° разности индСксы, Ссли ΠΎΠ±Π° находятся Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. НапримСр, Π΄Π»ΠΈΠ½Π° word[1:3] Ρ€Π°Π²Π½Π° 2.

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ слишком большой индСкс ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС:

 >>> word[42] # слово состоит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· 6 символов
Traceback (послСдний послСдний Π²Ρ‹Π·ΠΎΠ²):
  Π€Π°ΠΉΠ» "", строка 1, Π² 
IndexError: индСкс строки Π²Π½Π΅ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°
 

Однако индСксы срСзов Π²Π½Π΅ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ изящно ΠΏΡ€ΠΈ использовании для Π½Π°Ρ€Π΅Π·ΠΊΠ°:

 >>> слово[4:42]
'Π½Π°'
>>> слово[42:]
''
 

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Python нСльзя ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ β€” ΠΎΠ½ΠΈ нСизмСняСмы. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, присваиваниС индСксированной ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π² строкС ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкС:

 >>> слово[0] = 'J'
Traceback (послСдний послСдний Π²Ρ‹Π·ΠΎΠ²):
  Π€Π°ΠΉΠ» "", строка 1, Π² 
TypeError: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ 'str' Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнтов
>>> слово[2:] = 'Ρ€Ρƒ'
Traceback (послСдний послСдний Π²Ρ‹Π·ΠΎΠ²):
  Π€Π°ΠΉΠ» "", строка 1, Π² 
TypeError: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ 'str' Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнтов
 

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° другая строка, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ:

 >>> 'J' + слово[1:]
'Π”ΠΆΠΈΡ‚ΠΎΠ½'
>>> слово[:2] + 'py'
'Пипи'
 

ВстроСнная функция len() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ строки:

 >>> s = 'supercalifragilisticexpialidocious'
>>> Π›Π΅Π½(Ρ‹)
34
 

Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅

Π’ΠΈΠΏ тСкстовой ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ β€” str

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ρ‚Π°ΠΊΠΈΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ строк

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ большоС количСство ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для основныС прСобразования ΠΈ поиск.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ строковыС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ со встроСнными выраТСниями.

Бинтаксис строки Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ строки с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ str.format() .

Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строк Π² стилС printf

Π‘Ρ‚Π°Ρ€Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ форматирования, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ строк. Π»Π΅Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° % Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описан здСсь.

3.1.3. Бписки

Python Π·Π½Π°Π΅Ρ‚ ряд составных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… цСнности. НаиболСС ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ являСтся список , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ списка Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ запятыми значСния (элСмСнты) Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках. Бписки ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ элСмСнты Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², Π½ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ всС элСмСнты ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΈΠΏ.

 >>> ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹ = [1, 4, 9, 16, 25]
>>> ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹
[1, 4, 9, 16, 25]
 

Как ΠΈ строки (ΠΈ всС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ встроСнныС Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ), списки ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ проиндСксировано ΠΈ Π½Π°Ρ€Π΅Π·Π°Π½ΠΎ:

 >>> Squares[0] # индСксированиС Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ элСмСнт
1
>>> ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹[-1]
25
>>> ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹[-3:] # Π½Π°Ρ€Π΅Π·ΠΊΠ° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ список
[9, 16, 25]
 

ВсС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ срСзами Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ список, содСрТащий Π·Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½Ρ‹Π΅ элСмСнты. Π­Ρ‚ΠΎΡ‚ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ мСлкая копия списка:

 >>> ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹[:]
[1, 4, 9, 16, 25]
 

Бписки Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠ°ΠΊ конкатСнация:

 >>> ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹ + [36, 49, 64, 81, 100]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
 

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСизмСняСмыми, списки ΡΠ²Π»ΡΡŽΡ‚ΡΡ измСняСмыми. Ρ‚ΠΈΠΏ, Ρ‚.Π΅. Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΡ… содСрТания:

 >>> cubes = [1, 8, 27, 65, 125] # здСсь Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ
>>> 4**3# ΠΊΡƒΠ± 4 это 64, Π° Π½Π΅ 65!
64
>>> cubes[3] = 64 # Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
>>> ΠΊΡƒΠ±ΠΈΠΊΠΈ
[1, 8, 27, 64, 125]
 

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ элСмСнты Π² ΠΊΠΎΠ½Π΅Ρ† списка, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ append() (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΠΎΠ·ΠΆΠ΅):

 >>> cubes. append(216) # Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΡƒΠ± ΠΈΠ· 6
>>> cubes.append(7 ** 3) # ΠΈ ΠΊΡƒΠ± ΠΈΠ· 7
>>> ΠΊΡƒΠ±ΠΈΠΊΠΈ
[1, 8, 27, 64, 125, 216, 343]
 

Π’Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ слайсов, ΠΈ это ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ список ΠΈΠ»ΠΈ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ:

 >>> Π±ΡƒΠΊΠ²Ρ‹ = ['a', 'b', 'c', 'd', 'e', ​​'f', 'g']
>>> Π±ΡƒΠΊΠ²Ρ‹
['a', 'b', 'c', 'd', 'e', ​​'f', 'g']
>>> # Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ значСния
>>> Π±ΡƒΠΊΠ²Ρ‹ [2:5] = ['C', 'D', 'E']
>>> Π±ΡƒΠΊΠ²Ρ‹
['a', 'b', 'C', 'D', 'E', 'f', 'g']
>>> # Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ ΠΈΡ…
>>> Π±ΡƒΠΊΠ²Ρ‹ [2:5] = []
>>> Π±ΡƒΠΊΠ²Ρ‹
['Π°', 'Π±', 'Ρ„', 'Π³']
>>> # ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ список, Π·Π°ΠΌΠ΅Π½ΠΈΠ² всС элСмСнты пустым списком
>>> Π±ΡƒΠΊΠ²Ρ‹ [:] = []
>>> Π±ΡƒΠΊΠ²Ρ‹
[]
 

ВстроСнная функция len() Ρ‚Π°ΠΊΠΆΠ΅ примСняСтся ΠΊ спискам:

 >>> Π±ΡƒΠΊΠ²Ρ‹ = ['Π°', 'Π±', 'с', 'Π³']
>>> Π΄Π»ΠΈΠ½Π°(Π±ΡƒΠΊΠ²Ρ‹)
4
 

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ списков (созданиС списков, содСрТащих Π΄Ρ€ΡƒΠ³ΠΈΠ΅ списки), для ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

 >>> а = ['а', 'б', 'с']
>>> n = [1, 2, 3]
>>> Ρ… = [Π°, ΠΏ]
>>> Ρ…
[['а', 'б', 'с'], [1, 2, 3]]
>>> Ρ…[0]
['Π°', 'Π±', 'Π²']
>>> Ρ…[0][1]
'Π±'
 

3.

2. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ шаги ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Python для Π±ΠΎΠ»Π΅Π΅ слоТных Π·Π°Π΄Π°Ρ‡, Ρ‡Π΅ΠΌ слоТСниС Π΄Π²ΡƒΡ… ΠΈ Π΄Π²ΡƒΡ…. вмСстС. НапримСр, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ΄ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ряд Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

 >>> # ряд Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ:
... # сумма Π΄Π²ΡƒΡ… элСмСнтов опрСдСляСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ
... Π°, Π± = 0, 1
>>> Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ < 10:
... ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π°)
... Π°, Π± = Π±, Π°+Π±
...
0
1
1
2
3
5
8
 

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ прСдставлСно нСсколько Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

  • ΠŸΠ΅Ρ€Π²Π°Ρ строка содСрТит мноТСствСнноС присвоСниС : ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ a ΠΈ b ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ значСния 0 ΠΈ 1. Π’ послСднСй строкС это снова ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, дСмонстрируя, Ρ‡Ρ‚ΠΎ всС выраТСния Π² ΠΏΡ€Π°Π²ΠΎΠΉ части ΠΎΡ†Π΅Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ сначала ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ любого ΠΈΠ· Π·Π°Π΄Π°Π½ΠΈΠΉ. ВыраТСния ΠΏΡ€Π°Π²ΠΎΠΉ части ΠΎΡ†Π΅Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ.

  • Π¦ΠΈΠΊΠ» while выполняСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° выполняСтся условиС (здСсь: a < 10 ) остаСтся Π²Π΅Ρ€Π½Ρ‹ΠΌ. Π’ Python, ΠΊΠ°ΠΊ ΠΈ Π² C, любоС цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΡ‚ нуля, являСтся истинным; ноль Π›ΠžΠ–Π¬. УсловиС Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ строкой ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ списка, фактичСски любой ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ; всС, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅Π½ΡƒΠ»Π΅Π²ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ, истинно, пустыС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π»ΠΎΠΆΠ½Ρ‹. ВСст Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ простоС сравнСниС. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния ΠΏΠΈΡˆΡƒΡ‚ΡΡ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² C: < (мСньшС), > (большС), == (Ρ€Π°Π²Π½ΠΎ), <= (мСньшС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ), >= (большС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ) ΠΈ != (Π½Π΅ Ρ€Π°Π²Π½ΠΎ).

  • Π’Π΅Π»ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΈΠΌΠ΅Π΅Ρ‚ отступ : отступ β€” это способ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π² Python заявлСния. Π’ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ подсказкС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ввСсти Ρ‚Π°Π±ΡƒΠ»ΡΡ†ΠΈΡŽ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π»(Ρ‹) для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки с отступом. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Π²Ρ‹ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅ Π±ΠΎΠ»Π΅Π΅ слоТный Π²Π²ΠΎΠ΄ для Python с тСкстовым Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ; всС ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½Ρ‹Π΅ тСкстовыС Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ автоматичСский отступ срСдство. Когда составной ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ вводится ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ слСдуСт пустая строка, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Π½Π° Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ (ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ синтаксичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ³Π°Π΄Π°ΠΉΡ‚Π΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π»ΠΈ послСднюю строку). ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ каТдая строка Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ Π±Π»ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ отступ.

  • Ѐункция print() записываСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… Π΅ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². Π­Ρ‚ΠΎ отличаСтся ΠΎΡ‚ простого написания выраТСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ (ΠΊΠ°ΠΊ ΠΌΡ‹ сдСлали Ρ€Π°Π½Π΅Π΅ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°) Π² Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ нСсколько Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой ΠΈ строки. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΡŽΡ‚ΡΡ Π±Π΅Π· ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ, ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π» вставляСтся ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ красиво Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‰ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ это:

     >>> i = 256*256
    >>> print('Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ i Ρ€Π°Π²Π½ΠΎ', i)
    Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ i Ρ€Π°Π²Π½ΠΎ 65536.
     

    АргумСнт ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова end ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠΉ строки послС Π²Ρ‹Π²ΠΎΠ΄Π°, ΠΈΠ»ΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΎΠΉ строкой:

     >>> Π°, Π± = 0, 1
    >>> Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ < 1000:
    ... ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Π°, ΠΊΠΎΠ½Π΅Ρ† = ',')
    ... Π°, Π± = Π±, Π°+Π±
    ...
    0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,
     

Бноски

1

Π’Π°ΠΊ ΠΊΠ°ΠΊ ** ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ высокий ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Ρ‡Π΅ΠΌ - , -3**2 Π±ΡƒΠ΄Π΅Ρ‚ интСрпрСтируСтся ΠΊΠ°ΠΊ -(3**2) ΠΈ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ получаСтся -9 .

ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *