Здравствуйте,
задача такова: есть загаданное слово. пользователь вводит с клавиатуры буквы, если введенная буква есть в загаданном слове, то оно открывается.
я придумаю функцию-шифрователь: она представляет слово по буквам в виде кортежа (" - ", " а ").
сначала выводятся на экран первые элементы кортежа (прочерки), по мере отгадывания кортеж полностью заменяется угаданной буквой.
def out(a, b = ''):
i = 0
while i < len(a):
if b.upper() in a[i]:
a[i] = a[i][1]
print(a[i][0], end = '')
i += 1
print('\n')
print(a)
Проблема: если в слове есть повторяющиеся буквы, то выводит ошибку:
File "fourthteen.py", line 15, in out
a[i] = a[i][1]
IndexError: string index out of range
Смысл ошибки понятен, но не понятно почему так происходит, ведь при вводе буквы с клавиатуры кортеж проходится только один раз. Почему так?