Я знаю, что в python есть оператор in
, который может использоваться для проверки наличия какой-либо подстроки или символа в строке или нет. Я хочу сделать это, проверив каждую строку (подстроки длины). Является ли приведенный ниже код единственным способом или есть ли другой способ, которым я могу это достичь?Метод поиска подстроки
m = "college"
s = "col"
lm = len(m)
ls = len(s)
f = 0
for i in range(lm):
if (i+ls) <= lm:
if s == m[i:(i+ls)]:
global f
f = 1
break
if f:
print "present"
else:
print "not present"
Что я делаю здесь, если моя подстрока col
, моя программа проверяет строку длиной подстроки с подстрокой, двигаясь от начала до конца основной струны и возвращает истину или не.
col
oll
lle
leg
ege
Вы ищете лучший/отличный способ написания кода или для более разумного алгоритма? В буквальном смысле очевидным «другим способом достижения» поиска является использование оператора 'in'. Существует много способов написания кода по-разному, некоторые из них указаны в ответах. Существуют также более разумные алгоритмы, которые можно использовать для поиска подстроки, как указано в моем ответе. Просьба уточнить. – user4815162342
Я прочитал решения, и это было то, что я ожидал ... Если вы можете предоставить мне еще более эффективные алгоритмы PLZ, скажите, что это будет полезно для меня .... – abu
Мой ответ делает именно это, но вам понадобится закодировать их самостоятельно. – user4815162342