πŸ” Как Π½Π°ΠΉΡ‚ΠΈ индСкс вхоТдСния подстроки Π² строку python? 🧐

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ find() для поиска индСкса ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки Π² строку.

str = "ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки"
substring = "стр"
index = str.find(substring)
print(index)

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ пСрСмСнная str содСрТит ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку, Π° пСрСмСнная substring содСрТит ΠΈΡΠΊΠΎΠΌΡƒΡŽ подстроку. ΠœΠ΅Ρ‚ΠΎΠ΄ find() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки Π² строку, ΠΈΠ»ΠΈ -1, Ссли подстрока Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°. Π—Π°Ρ‚Π΅ΠΌ, этот индСкс выводится Π½Π° экран.

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

Как Π½Π°ΠΉΡ‚ΠΈ индСкс вхоТдСния подстроки Π² строку Python

Π’ Python сущСствуСт нСсколько способов Π½Π°ΠΉΡ‚ΠΈ индСкс вхоТдСния подстроки Π² строку. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…:

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

ΠœΠ΅Ρ‚ΠΎΠ΄ find() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния подстроки Π² строку. Если подстрока Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ -1.

string = "ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки"
substring = "ст"
index = string.find(substring)
print(index)  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 7

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

ΠœΠ΅Ρ‚ΠΎΠ΄ index() Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ find(), Π½ΠΎ Ссли подстрока Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ValueError. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ этот ΠΌΠ΅Ρ‚ΠΎΠ΄, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ отсутствии подстроки Π² строкС.

string = "ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки"
substring = "ст"
try:
    index = string.index(substring)
    print(index)  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 7
except ValueError:
    print("ΠŸΠΎΠ΄ΡΡ‚Ρ€ΠΎΠΊΠ° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°")

Π‘Ρ€Π΅Π·Ρ‹ (slicing)

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ срСзы, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ индСксы всСх Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ подстроки Π² строку. Для этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» for.

string = "ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки. Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€."
substring = "ΠΏΡ€ΠΈΠΌΠ΅Ρ€"
indexes = []
length = len(substring)
for i in range(len(string)):
    if string[i:i+length] == substring:
        indexes.append(i)
print(indexes)  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ [7, 26]

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

Если ваша Π·Π°Π΄Π°Ρ‡Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ строки Π½Π° подстроки, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ split(), Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ index() для поиска индСксов.

string = "ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки. Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€."
substring = "ΠΏΡ€ΠΈΠΌΠ΅Ρ€"
words = string.split()
indexes = []
for i, word in enumerate(words):
    if word == substring:
        indexes.append(i)
print(indexes)  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ [2, 6]

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

Для слоТных случаСв, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ трСбуСтся Π±ΠΎΠ»Π΅Π΅ слоТный поиск, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ re ΠΈ рСгулярныС выраТСния.

import re

string = "ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки. Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€."
substring = "ΠΏΡ€ΠΈΠΌΠ΅Ρ€"
pattern = re.compile(substring)
indexes = [match.start() for match in re.finditer(pattern, string)]
print(indexes)  # Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ [7, 26]

Π’Ρ‹Π²ΠΎΠ΄

Π’Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ нСсколько способов нахоТдСния индСкса вхоТдСния подстроки Π² строку Python. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ подходящий ΠΌΠ΅Ρ‚ΠΎΠ΄ Π² зависимости ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠΉ.

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

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

Python. Бписки. Π˜Π½Π΄Π΅ΠΊΡΡ‹

25 Π¦ΠΈΠΊΠ» for. ΠžΠ±Ρ…ΠΎΠ΄ списков ΠΈ строк Python

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

πŸ˜ƒ Как Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ расстояниС ΠΌΠ΅ΠΆΠ΄Ρƒ строками πŸ“

πŸ” ΠžΡ‚ΠΊΡƒΠ΄Π° ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Python: Π³Π΄Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ

Π‘ΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚Π΅ символы Π² строкС Python с этими простыми шагами! πŸ˜ƒπŸ

πŸ” Как Π½Π°ΠΉΡ‚ΠΈ индСкс вхоТдСния подстроки Π² строку python? 🧐

πŸ” Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π² Python 3: простая инструкция для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ pip Π² Python? 🐍| ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ объяснСниС ΠΈ использованиС pip

πŸ”§ Как ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ энтСр Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅: простоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ