как убрать лишние запятые из списка?
у меня есть список 'саа' с командами для голосового помощника но при записи появляются лишние запятые
caa = []
if 'voice_assist_caa.txt' in os.listdir(os.getcwd()):
path = Path('voice_assist_caa.txt')
caas = path.read_text()
print(caas)
caa = caas.split(',')
else:
my_file = open("voice_assist_caa.txt", "w", encoding='utf-8')
my_file.close()
это код для восстановления этого списка
caa.append(name)
caaf = open('voice_assist_caa.txt', 'w')
for element in caa:
caaf.write(element)
caaf.write(',')
caaf.close()
это для сохранения списка
после этого появляются лишние запятые в txt файле например:
,включи youtube,https://www.youtube.com,,открой stackoverflow,https://ru.stackoverflow.com/,
а нужно так:
включи youtube,https://www.youtube.com,открой stackoverflow,https://ru.stackoverflow.com/,
Ответы (1 шт):
Автор решения: gil9red
→ Ссылка
Действия:
- Регуляркой через шаблон
,{2,}заменяются последовательности запятых, состоящих от 2 подряд идущих запятых, на одну запятую - Методом
lstripудаляются запятые слева
Пример:
import re
text = ',включи youtube,https://www.youtube.com,,открой stackoverflow,https://ru.stackoverflow.com/,'
new_text = re.sub(',{2,}', ',', text)
new_text = new_text.lstrip(',')
print(new_text)
Результат:
включи youtube,https://www.youtube.com,открой stackoverflow,https://ru.stackoverflow.com/,