Python中的Bigram之后发生的情况

假设给出了单词。这些是第一和第二,请考虑某些文本中“第一第二第三”形式的出现,这里第二紧接在第一之后,第三紧接在第二之后。

对于每种此类情况,在答案中添加“第三”,并显示答案。因此,如果文字是“ lina是个好女孩,她是个好歌手”,第一个=“ a”,第二个=“ good”,答案将是[girl,singer]

为了解决这个问题,我们将遵循以下步骤-

  • 文本:=用空格分隔字符串

  • res是一个空列表

  • 对于i:= 0到文本大小– 1

    • 如果i + 2 <文本的长度,并且text [i] =第一和text [i + 1] =第二,则将text [i + 2]附加到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']