Как сравнить имена по их части (или производной) в python?
Самый хороший вариант найти какую не будь библиотеку для сравнений. Первое что нашел поиск https://antonz.ru/difflib-ratio/
Если это не учебная, а практическая задача, то вы необоснованно усложняете реализацию.  Проще и удобнее использовать таблицу имен. Не говоря уже о том, что это единственный способ сравнить одинаковые, но совершенно по разному звучащие имена, например Георгий и Жора, Анна и Нюра.

Для создания таблицы имен можно использовать обыкновенный список. Например:
names = [
       ('Саша', 'Александр'), 
       ('Георгий', 'Жора'), 
       ('Лена', 'Леночка', 'Lena')
]

name1 = 'Жора'
name2 = 'Георгий'
for x in names:
    if name1 in x and name2 in x:
        print(name1, name2, 'same')