Python 中 Bigram 之后的出现
假设给定一些单词。这些单词是 first 和 second,考虑在 "first second third" 形式的文本中出现的情况,此处 second 紧跟在 first 之后,而 third 紧跟在 second 之后。
对于每种此类情况,将 "third" 添加到答案中,并显示答案。因此,如果文本为 "lina is a good girl she is a good singer",则 first = “a”,second = “good”,答案将是 [girl, singer]
为了解决这个问题,我们将遵循以下步骤:
- text := 按空格对字符串进行拆分
- res 是一个空列表
- for i := 0 到 text 的大小 – 1
- 如果 i + 2 < text 的长度,并且 text[i] = first 并且 text[i + 1] = second,则将 text[i + 2] 追加到 res
- 返回 res
示例
让我们看看以下实现来更好地理解该过程:
class Solution(object): def findOcurrences(self, text, first, second): text = text.split(" ") res = [] for i in range(len(text)): if i+2<len(text) and text[i] ==first and text[i+1]==second: res.append(text[i+2]) return res ob1 = Solution() print(ob1.findOcurrences("lina is a good girl she is a good singer","a","good"))
输入
"lina is a good girl she is a good singer" "a" "good"
输出
['girl', 'singer']
广告