Как удалить подобные символы из списка ['\n', '\n']?

Никак не получается удалить эти символы, мне казалось, что генераторы списков должны помочь, но что-то очевидно идет не так, и всё остается на своих местах

rus2=[x for x in rus2 if x and x!=['\n']]

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

Автор решения: nomnoms12

Ваша проверка сравнивает элементы со списком ['\n'], а не просто с символом '\n'.

Пример:

li = ['Hello', '\n', 'World!', '\n']

result = [x for x in li if x != '\n']
print(result)

stdout:

['Hello', 'World!']
→ Ссылка
Автор решения: CrazyElf

Вариант со скобками тоже можно использовать, но по-другому, применив оператор in:

li = ['', 'Hello', '\r', '\n', '', 'World!', '\r', '\n']
ch_to_remove = ['\n', '\r']

result = [x for x in li if x and x not in ch_to_remove]
print(result)
→ Ссылка