Ошибка string indices must be integers в программе Python
пишу программу на Python, в которой нужно ввести строку и слово, и заменить самое короткое слово в строке на введенное слово. '''
st=str(input('enter string: ').split())
wr=str(input('enter word: '))
res = []
count = 100
n = 1
for i in st:
if len(i)<count:
count=len(i)
word=i
n = i
for i in st:
if len(i) == n:
res.append(wr)
else:
res.append(st[i])
print(res)
''' В строке res.append мне выводится эта ошибка, хотя непонятно, потому что i и есть int.
Ответы (1 шт):
Автор решения: Danis
→ Ссылка
Вероятнее всего проблема здесь
st=str(input('enter string: ').split())
Если ввести привет друг то мы получим строку
"['привет', 'друг']"
а нам нужен массив поэтому уберите str
st = input('enter string: ').split()
а также у вас не правильно содержимое второго цикла for
if len(i) == count:
res.append(wr)
else:
res.append(i)