Почему индекс в переменной McClan s2[1] == s2.title()[1] выводит True, если s2[1] это символ нижнего регистра
На уроках было задание из молодого поколения Python Заглавные буквы
На вход программе подается строка состоящая из имени и фамилии человека, разделенных одним пробелом. Напишите программу, которая проверяет, что имя и фамилия начинаются с заглавной буквы.
Формат входных данных На вход программе подается строка.
Формат выходных данных Программа должна вывести «YES» если имя и фамилия начинаются с заглавной буквы и «NO» в противном случае.
Примечание. Строка содержит только буквы.
Мой вариант решения был таков:
a=input()
if a == a.title():
print('YES')
else:
print('NO')
Но преподаватель сказал, что он не будет считывать фамилии, в который два символа верхнего регистра, к примеру как у шотландцев или ирландцев McGregor, McClain, McGonagal и предложил свой код с заданием разобраться как он работает:
s = input()
for i in range(len(s)):
if s[i] == ' ':
break
s1, s2 = s[:i], s[i + 1:]
if s1[0] == s1.title()[0] and s2[1] == s2.title()[1]:
print(True)
else:
print(False)
Но я, хоть убейте, не могу понять почему же в переменной McClan s2[1] == s2.title()[1] выводит True, если s2[1] это символ нижнего регистра и он не равен s2 с методом title().
Прошу помочь разобраться.