Я хочу создать список кортежей, в котором я хочу:
- первый элемент кортежа = индекс алфавита
- второй элемент кортежа = индекс пробела перед следующим алфавит
# String
input= "M i n d"
# List of tuple
output = [(0, 3), (4, 9), (10, 18), (19, 19)]
Я смог написать эту логику c (с ошибкой в последнем кортеже), но чувствую, что должен быть более умный способ написать это. Есть идеи?
string = "M i n d"
coltuple = []
for a in string:
if a.isalpha() == True:
start = string.index(a)
next_string = string[(start + 1) :]
if next_string:
for b in next_string:
if b.isalpha() == True:
end = string.index(b) - 1
print("End:", end)
break
else:
end = len(string) - 1
coltuple += [(start, end)]
print(coltuple)