Лучший способ сопоставить несколько ключевых слов с одним значением? (карта ключевых значений? база данных?)

#python #python-3.x #database #dictionary #search

Вопрос:

Я работаю в последней версии Python. Я очень новичок в python, но не в программировании в целом.

У меня есть список строк, и я буду искать в этих строках ключевые слова. Эти ключевые слова будут использоваться для выбора файлов PDF для сбора. Некоторые из них будут простыми. Я найду ключевое слово «ворота» в строке и буду знать, как получить PDF-файл «ворота». Но другие будут более сложными и будут иметь несколько условий, например, строка содержит «ворота», но не содержит «сопла», извлеките PDF-файл «ворота без сопла».

Мне еще не дали полного и конкретного списка всех возможностей, но это общая идея. Там будет много строк, в которых потребуется выполнить поиск по многим ключевым словам, и комбинация найденных или НЕ найденных ключевых слов определит, какой файл PDF выбрать. У меня такое чувство, будто я кодирую поисковую систему.

Каков наилучший способ справиться с этим? Миллион утверждений «если» звучит ужасно. Карта ключевых значений может сработать, или это скорее проблема «вам нужна полная база данных»?

Если бы не было слишком много условий, я мог бы обойтись без уродливых утверждений «если» (или, может быть, утверждений о случае), но мое внутреннее » я » съеживается от этого.