我有一个关键字列表(csv格式),进入数据库的所有条目都应该匹配。我正在尝试编写一个python代码,据此,如果输入的单词与列表中的任何单词都匹配前3个或更多字母,则为
例如:
如果我的单词是ora
单词列表:
orange
yellow
blue
green
purple
我想将单词ora分配给橙色键。有什么办法可以在python上做到这一点?
另一个例子是,如果单词是orazzz,我仍然希望它能使前三个字母与橙色匹配并将其分配给该键。
如果可能,我想将其放入if语句中
答案 0 :(得分:1)
您可以使用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'}
答案 1 :(得分:0)
使用字典进行查找和尝试捕获以处理未发现的情况。
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) )