Computer >> Máy Tính >  >> Lập trình >> Python

Sự xuất hiện sau Bigram trong Python

Giả sử có những từ đã cho. Đây là lần đầu tiên và thứ hai, hãy xem xét các lần xuất hiện trong một số văn bản có dạng "thứ nhất thứ hai, thứ ba ở đây" thứ hai xuất hiện ngay sau phần đầu tiên và thứ ba đến ngay sau phần thứ hai.

Đối với mỗi trường hợp như vậy, hãy thêm "thứ ba" vào câu trả lời và hiển thị câu trả lời. Vì vậy, nếu văn bản như "lina là một cô gái tốt, cô ấy là một ca sĩ giỏi", thứ nhất ="a", thứ hai ="tốt", câu trả lời sẽ là [cô gái, ca sĩ]

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • text:=chia chuỗi theo dấu cách
  • res là một danh sách trống
  • for i:=0 to size of text - 1
    • nếu i + 2 <độ dài văn bản và văn bản [i] =đầu tiên và văn bản [i + 1] =thứ hai, thì nối văn bản [i + 2] vào res
  • trả lại res

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

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"))

Đầu vào

"lina is a good girl she is a good singer"
"a"
"good"

Đầu ra

['girl', 'singer']