Соответствие слова первым 3 буквам любого слова в списке - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть список ключевых слов (в формате csv), которым должны соответствовать все записи, входящие в мою базу данных.Я пытаюсь написать код на Python, при котором введенное слово соответствует первым 3 или более буквам, как любое слово в списке.

Например:

, если мое слово ora

список слов:

  orange
  yellow
  blue
  green
  purple

Я хочу назначить слово ora клавише оранжевого цвета.Есть ли какой-нибудь способ сделать это на python?

Другой пример: если слово orazzz, я все же хочу, чтобы оно обнаружило, что первые 3 буквы соответствуют оранжевому, и присвоило его этой клавише.

Я хотел бы поместить это в оператор if, если это возможно

Ответы [ 2 ]

0 голосов
/ 18 февраля 2019

Использовать словарь для поиска и ловушку try для обработки найденной ситуации.

keywords = ('orange yellow blue green purple'.split())

keys = dict((w[0:3], w) for w in keywords)

entry = 'orzazzz'
try:
    key = keys[entry[0:3]]
    print( 'Entered value {0} matches key {1}'.format(entry, key) )
except KeyError:
    print( 'Entered value {0} does not match and keyword.'.format(entry) )
0 голосов
/ 18 февраля 2019

Вы можете справиться с этим с помощью Set.

word=set('orange')
db_entry=set('orngesdksd')

if len(word.intersection(db_entry))>=5:
    print(word.intersection(db_entry))

Выход:

{'n', 'e', 'o', 'g', 'r'}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...