Для больших и маленьких букв кириллицы:
Как видно, создавать надо всё таки две строки определённых символов - больших или маленьких (у меня строки гласных и согласных маленькие, а если бы были большие, то я б использовала upper вместо lower). Обязательно нужны две строки затем, что твёрдый и мягкий знаки не относятся ни к гласным, ни к согласным. При вводе символов, не являющихся большими или маленькими буквами кириллицы, ничего не выдаётся, а просто начинается новый этап цикла ввода, анализа и выдачи результатов (в том случае, если введённые буквы гласные или согласные буквы кириллицы)...
создаете два массива с гласными и согласными, потом требуете от пользователя ввести букву, переменную с буквой сравниваете с массивами и получаете верный ответ
letter=input('Введите букву:'
if letter in 'аеёиоуыэюя':
print('гласная'
elif letter in 'бвгджзйклмнпрстфхцчшщъь':
print('согласная'
else:
print('не знаю'