Да, это ошибка, причина i
теперь является буквой, а не числом, поэтому она не может мод для 2.
Я не уверен в синтаксисе зацикливания for
в Python, но вы можете попробовать:
cnt = 0
for i in letters:
if cnt%2 == 0:
return i.upper()
else:
return i.lower()
cnt++
Надеюсь, это поможет вам!
Исправь меня, если я ошибаюсь. Спасибо