πŸ”Ž Как Π½Π°ΠΉΡ‚ΠΈ индСкс строки Π² Python: простыС способы исслСдования πŸ”

Как Π½Π°ΠΉΡ‚ΠΈ индСкс строки Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅

Π’ Python Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ индСкс строки с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° index() для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΈΠΏΠ° str. Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строки Π² ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку.

string = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
index = string.index("ΠΌΠΈΡ€")
print(index)  # Π’Ρ‹Π²ΠΎΠ΄: 8

Если указанная строка Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, ΠΌΠ΅Ρ‚ΠΎΠ΄ index() Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ ValueError. Для избСТания ошибки, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ find(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ строки, Π½ΠΎ Π² случаС отсутствия строки Π²Π΅Ρ€Π½Π΅Ρ‚ -1.

string = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
index = string.find("ΠΏΠΎΠΊΠ°")
if index == -1:
    print("Π‘Ρ‚Ρ€ΠΎΠΊΠ° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°")

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ index() ΠΈ find() для поиска индСкса строки Π² Python.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как Π½Π°ΠΉΡ‚ΠΈ индСкс строки Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅

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

1. ΠœΠ΅Ρ‚ΠΎΠ΄ index()

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ способ - ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ index(). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡ‰Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ подстроки Π² строку ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π΅ индСкс. Если подстрока Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π±ΡƒΠΆΠ΄Π΅Π½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ValueError.

string = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
index = string.index("ΠΌΠΈΡ€")
print(index)  # Π’Ρ‹Π²ΠΎΠ΄: 8

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡ‰Π΅ΠΌ индСкс подстроки "ΠΌΠΈΡ€" Π² строкС "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!". ΠœΠ΅Ρ‚ΠΎΠ΄ index() Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ "ΠΌΠΈΡ€" ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ индСкс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π²Π΅Π½ 8.

2. ΠœΠ΅Ρ‚ΠΎΠ΄ find()

Π’Ρ‚ΠΎΡ€ΠΎΠΉ способ - ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ find(). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡ‰Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ подстроки Π² строкС ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π΅ индСкс. Однако, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° index(), Ссли подстрока Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, ΠΌΠ΅Ρ‚ΠΎΠ΄ find() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ -1, Π° Π½Π΅ Π²ΠΎΠ·Π±ΡƒΠΆΠ΄Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.

string = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
index = string.find("ΠΌΠΈΡ€")
print(index)  # Π’Ρ‹Π²ΠΎΠ΄: 8

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ find() для поиска индСкса подстроки "ΠΌΠΈΡ€" Π² строкС "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!". Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΏΡ€ΠΈ использовании ΠΌΠ΅Ρ‚ΠΎΠ΄Π° index() - индСкс Ρ€Π°Π²Π΅Π½ 8.

3. ΠœΠ΅Ρ‚ΠΎΠ΄ startswith() ΠΈ endswith()

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ способ Π½Π°ΠΉΡ‚ΠΈ индСкс строки - ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ startswith() ΠΈ endswith(). ΠœΠ΅Ρ‚ΠΎΠ΄ startswith() провСряСт, начинаСтся Π»ΠΈ строка с ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ подстроки, Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ endswith() провСряСт, заканчиваСтся Π»ΠΈ строка ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ подстрокой. Если подстрока Π½Π°ΠΉΠ΄Π΅Π½Π°, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ True, ΠΈΠ½Π°Ρ‡Π΅ - False.

string = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
startsWith = string.startswith("ΠŸΡ€ΠΈΠ²Π΅Ρ‚")
endsWith = string.endswith("ΠΌΠΈΡ€!")
print(startsWith)  # Π’Ρ‹Π²ΠΎΠ΄: True
print(endsWith)  # Π’Ρ‹Π²ΠΎΠ΄: True

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ провСряСм, начинаСтся Π»ΠΈ строка с "ΠŸΡ€ΠΈΠ²Π΅Ρ‚" ΠΈ заканчиваСтся Π»ΠΈ ΠΎΠ½Π° Π½Π° "ΠΌΠΈΡ€!". Оба ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ True, поэтому строка начинаСтся с "ΠŸΡ€ΠΈΠ²Π΅Ρ‚" ΠΈ заканчиваСтся Π½Π° "ΠΌΠΈΡ€!".

4. РСгулярныС выраТСния

Для Π±ΠΎΠ»Π΅Π΅ слоТных поисковых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСгулярныС выраТСния. РСгулярныС выраТСния ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ шаблон для поиска. Python прСдоставляСт ΠΌΠΎΠ΄ΡƒΠ»ΡŒ re, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с рСгулярными выраТСниями.

import re
string = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
pattern = "ΠΌΠΈΡ€"
match = re.search(pattern, string)
if match:
    index = match.start()
    print(index)  # Π’Ρ‹Π²ΠΎΠ΄: 8

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм рСгулярноС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ для поиска подстроки "ΠΌΠΈΡ€" Π² строкС "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!". Ѐункция search() модуля re ΠΈΡ‰Π΅Ρ‚ соотвСтствиС ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, содСрТащий ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ соотвСтствии, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΉ подстроки. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ индСкс 8, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ символа подстроки "ΠΌΠΈΡ€".

Π’Ρ‹Π²ΠΎΠ΄

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли нСсколько способов Π½Π°ΠΉΡ‚ΠΈ индСкс строки Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠœΡ‹ ΡƒΠ·Π½Π°Π»ΠΈ ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… index() ΠΈ find(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ подстроки Π² строку. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ·Π½Π°Π»ΠΈ ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… startswith() ΠΈ endswith(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚, начинаСтся Π»ΠΈ ΠΈΠ»ΠΈ заканчиваСтся Π»ΠΈ строка ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ подстрокой. И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, ΠΌΡ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ использованиС рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ для Π±ΠΎΠ»Π΅Π΅ слоТных поисковых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠΈ:

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Π£Ρ€ΠΎΠΊ 10 Π‘Ρ‚Ρ€ΠΎΠΊΠΈ: индСксы ΠΈ срСзы Python

13 Бписки: индСксы ΠΈ срСзы Python

#9. Знакомство с индСксами ΠΈ срСзами строк | Python для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ списки Π² Python: основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ πŸ”

Руководство ΠΏΠΎ сортировкС чисСл ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python πŸ“ˆ

πŸ”§ Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты Π² строкС ΠΏΠΈΡ‚ΠΎΠ½ | ИзмСнСниС элСмСнтов строковых ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Python

πŸ”Ž Как Π½Π°ΠΉΡ‚ΠΈ индСкс строки Π² Python: простыС способы исслСдования πŸ”

πŸ” Как вывСсти надпись Π½Π° экран Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅? Π¨Π°Π³ Π·Π° шагом руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ! πŸ˜ƒπŸ“

πŸ”— Как ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ HTML ΠΊ Python: пошаговоС руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ T Python? 🐍 Π£Π·Π½Π°ΠΉΡ‚Π΅ всС сСкрСты ΠΈ особСнности