Top.Mail.Ru
Ответы

Ошибка <TypeError: list indices must be integers or slices, not str> в python

Как исправить ошибку TypeError: list indices must be integers or slices, not str ?

g = ['hg\n', 'bbb\n', 'fff\n', 'g\n', 'aa']
for x in g:
g[x] = g[x] - '\n'

По дате
По рейтингу
Аватар пользователя
9мес

Ошибка эта возникает, когда ты пытаешься использовать строку в качестве индекса списка, что недопустимо. В твоём коде тогда ошибка возникает из-за строки g[x] = g[x] - '\n', так как x является элементом списка, а не индексом.

1234
 g = ['hg\n', 'bbb\n', 'fff\n', 'g\n', 'aa'] 
for i in range(len(g)): 
    g[i] = g[i].replace('\n', '') 
print(g)  

Код удаляет символы новой строки из каждого элемента списка.