Вы показали механизм создания вопроса. Но совершенно не показали никаких попыток создать тот самый «подсчёт правильных ответов», ну или я его не вижу. Вы ждёте, что вам его спроектируют и напишут за вас? Сомневаюсь, что так будет.
Приносите свою попытку сделать «подсчёт правильных ответов», тогда будет предмет для обсуждения. Пока что это задание, а не вопрос.
Opoqq, смотрите itertools - входит в стандартный Python. Там в документации полно примеров. Формально ничего сложного. Но без понимания объектной модели Python, без навыка взаимодействия с последовательностями вы потратите время напрасно.
Opoqq, так где у вас в коде-то попытки сделать то, о чем говорите? Я их там не увидел. Увидел печальный уровень владения ЯП. Как я понимаю, вы стали жертвой инфоцыган, обещающих золотые горы на халявных ботах или цифровых валютах, которые сделать раз плюнуть. Не верьте им. Это большой труд по разбору всех нюансов и достижению глубокого понимания, как всё устроено и где скрыты подводные камни, и труд этот за вас никто делать не будет. Боты - это сложно. Цифровые валюты - это сложно. В том состоянии, которое я наблюдаю в вашем коде, это вам скорее всего пока не по плечу.
mayton2019, во-первых, надо с простым вариантом разобраться. Во-вторых, тут в лоб я бы даже не брался. В-третьих, вообще-то это довольно скучно... в том смысле, что результат всей этой суеты только приобретенный опыт, а практического применения - ноль.
mayton2019, и еще оно, естественно, опирается на словарь, а словарь не содержит все возможные словоформы. Если словарь расширить, будет больше вариантов находить.
mayton2019, пока оно работает для одного входного слова, для которого надо найти анаграммы.
Анаграмм оно находит столько, сколько их содержится в словаре.
Но надо отключать слайсинг, тогда работает. Со слайсингом оно возвращает не все варианты :/ А если слайсинг не отключать, то на длинных словах надолго задумывается. Впрочем, я писал это дело на телефоне, ноут был не под руками, поэтому возможно на нормальном компе будет не так уж и долго...
mayton2019, между прочим, я наковырял в Python функцию itertools.permutations, которая вместе с islice вроде бы делает то, что надо - ленивый генератор со слайсером. То-есть, можно есть слона по частям.
Но по непонятной мне причине со слайсами какой-то косяк. Я даже перестраховался и края слайсов перекрыл, но всё равно где-то что-то теряется. Видимо, слайс каждый раз вызывает заново итератор и он что-то там в другом порядке делает. https://github.com/phaggi/anagrams
Конечно, стыдно показывать этот кошмар… но это даже не альфа, так что ладно…
Поэтому до проверки на последовательные гласные/согласные я ещё не дошёл :/
mayton2019, тут я думаю вопрос в том, какое количество вариантов должно генерироваться, с учётом фильтрации повторений; например, 10-буквенное слово даст… ммм… там видимо сложная формула, что-то порядка 10! - 9! + 8! -7!… но я не силён в комбинаторике. В любом случае, это будет порядка миллионов сочетаний. Так вот миллионы сочетаний можно положить куда-либо в память или в базу; да и просто в виде ленивого генератора можно… а вот миллионы if могут эту генерацию резко затормозить, т.к. это довольно затратная операция.
mayton2019, а как? Нужны развесистые правила, это может сильно затормозить процесс генерации. Впрочем, как я уже говорил, это не оптимальный путь брутфорса, надо через индексы.