在python中搜索关键词

时间:2016-02-02 13:08:09

标签: python list dictionary key words

如果我在Python中提问并且答案是chicken,我想输出与鸡有关的内容。并且,如果答案是beef我想输出与牛肉相关的东西,取决于提供的答案。

我怎么能构建这个?我应该有多个关键词和相关答案的列表吗?新手。

1 个答案:

答案 0 :(得分:0)

我会使用dict的{​​{1}}:

list

有关详细信息,请参阅Data Structures上的Python手册。请注意,我还使用random.choice()从每个列表中选择随机项。

这是其运行的输出:

import random

similar_words = {
    'chicken': ['poultry', 'wings'],
    'beef': ['cow', 'ground-beef', 'roast-beef', 'steak'],
}

word = raw_input("Enter a word: ").strip()
if word in similar_words:
    print random.choice(similar_words[word])
else:
    print "Not found!"

编辑:如果单词包含在整个句子中,您在评论中询问如何执行此操作。这是一个例子:

$ python words.py
Enter a word: chicken
poultry
$ python words.py
Enter a word: beef
cow
$

在此,我们使用words = raw_input("Enter a word or sentence: ").strip().split() for word in words: if word.lower() in similar_words: print random.choice(similar_words[word.lower()]) else: print "Not found!" 将句子拆分为split()个单词。然后我们循环遍历每个单词,看看我们的list中是否存在该单词的(小写版本),并使用单个单词执行与上面相同的操作。