Проблема с выводом python
Только начинаю изучать язык и хочу разобраться с функциями,поэтому зделал функцию сначала.Но у меня почему то не выводится текст
Ввёл слово cAPSlOCK
def error(x):
x=x.title()
return x
word=input()
a=word
letterupper=[]
for letter in word:
if letter.isupper():
letterupper.append(letter)
if len(word)-len(letterupper)==0:
print(word.lower())
elif word[0].islower():
if len(word)-len(letterupper)==1:
print(error(word))
else:
print(word)
Ответы (1 шт):
Эта программа проходит по пути, при котором не выполняется ни один print.
Условие len(word)-len(letterupper)==0 не срабатывает, т.к. в слове две маленьких буквы.
Условие word[0].islower() срабатывает.
Условие len(word)-len(letterupper)==1не срабатывает, т.к. опять же в слове две маленьких буквы.
В результате программа заканчивает выполнение так ни разу не вызвав print.
Подобные проблемы удобно анализировать в отладчике пошагово проходя программу и при этом просматривая значения переменных и выражений на каждом шаге. Либо используйте отладчик из IDE, или встроенный в питон pdb.