Получаю текст с разным содержимым и внутри него могут встречаться след слова:
1) посёлок городского типа
2) село
3) городской округ Киров, село
Если встретился первый текст нужно, чтобы переменной присвоился весь текст после слов до запятой.
Если встретился второй текст нужно, чтобы переменной присвоился весь текст после слов до запятой, а если ее нет(запятой) то просто весь текст до конца.
Если встретился третий текст нужно, чтобы переменной присвоился весь текст после слов до запятой, а если ее нет(запятой) то просто весь текст до конца.
frontjss, Использовать regexp. И я бы изменил шаблон, раз нужно найти все до запятой (если она есть). В match.group(1) будет наша строка.
import re
s = 'городской округ Киров, село Дымки Южного р-на, до востребования'
rc = re.compile(r'(?:посёлок городского типа|село)\s+([^,]*)')
match = rc.search(s)
if match:
print(match.group(1))