Как вырезать из строки первые вхождения букв и поместить их в массив?

Дается случайная строка. Например: abrakadabra. Нужно из нее вырезать все первые вхождения букв и закинуть их в массив, при этом удалив из строки.

т.е. массив будет abdkr, а строка будет aaabra

Как это можно реализовать?

Я предполагаю, что это регулярки. Я прав?


Ответы (2 шт):

Автор решения: Iwan__entry
s = input()
chars_vector = []

for i in range(len(s)):
    if i == s.find(s[i]):
        chars_vector.append(i)

ls_s = [i for i in s]

for i in chars_vector:
    ls_s[i] = ''

for i in chars_vector:
    chars_vector[chars_vector.index(i)] = s[i]

print(''.join(ls_s), chars_vector)
→ Ссылка
Автор решения: 69Mortes
# Дана строка. Сохранить в ней только первые вхождения символов, удалив все остальное.
# Результат вывести в виде кортежа.
stroka = "abrakadabra"
print("Нашe предложение: ", stroka)  # выводим исходный результат
# Разделим нашу строку на отдельные символы:
a1 = []  # создаем пустой список, в котором будут уникальные элементы
# проверим нашу строку на дубляж символов
for spisok1 in stroka: # прогон букв по индексу из строки
    a1.append(spisok1) # добавляем поочередно элементы списка
    k1 = a1.count(spisok1) # создаем переменную для поиска дубляжа
    if k1 == 2: # создаем условие, при нахождении дубляжа
        print("удаляем дубляж:   ", a1.pop()) # сообщаем какой элемент повторился и удаляем его
print("полученный кортеж", tuple(a1)) # Результат выводим в виде кортежа
→ Ссылка