简单
技术面试0 次浏览在百度的搜索引擎业务中,经常需要对网页的关键词进行提取。请编写一个简单的 Python 函数,输入一段文本,输出其中出现频率最高的前 3 个关键词。假设关键词是由连续的字母或数字组成,不考虑标点符号。
百度算法工程师
Python关键词提取搜索引擎
答题要点
推荐使用分层分析法来解答。首先对输入文本进行预处理,然后统计关键词频率,最后找出频率最高的前 3 个关键词。关键要点如下:1. 文本预处理:使用正则表达式去除标点符号,将文本拆分为单词。2. 频率统计:使用字典来统计每个关键词的出现次数。3. 排序:对字典按照值进行降序排序。4. 取前 3 个:从排序后的字典中取出前 3 个关键词。示例思路:可以使用 `re.findall` 函数提取单词,使用 `collections.Counter` 来统计频率,然后使用 `most_common` 方法获取前 3 个关键词。代码示例:pythonimport refrom collections import Counterdef extract_top3_keywords(text): words = re.findall(r'[a-zA-Z0-9]+', text.lower()) counter = Counter(words) return counter.most_common(3)