Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

คำทั่วไปในสองสตริงใน Python


สมมติว่าเรามีสตริง s0 และ s1 สองสตริง แทนประโยค เราต้องหาจำนวนคำที่ไม่ซ้ำกันซึ่งใช้ร่วมกันระหว่างสองประโยคนี้ เราต้องจำไว้ว่า คำไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ดังนั้น "tom" และ "ToM" จึงเป็นคำเดียวกัน

ดังนั้น หากอินพุตเป็น s0 ="ฉันชอบการเข้ารหัส python", s1 ="การเข้ารหัสใน python นั้นง่าย" ดังนั้นผลลัพธ์จะเป็น 2 เนื่องจากมีคำทั่วไป 2 คำ ได้แก่ ['python', 'coding']

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • แปลง s0 และ s1 เป็นตัวพิมพ์เล็ก
  • s0List :=รายการคำศัพท์ใน s0
  • s1List :=รายการคำศัพท์ใน s1
  • แปลงชุดจากคำใน s0List และ s1List จากนั้นตัดกันเพื่อรับคำทั่วไป และคืนค่าจำนวนผลลัพธ์ของการแยก

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

ตัวอย่าง

class Solution:
   def solve(self, s0, s1):
      s0 = s0.lower()
      s1 = s1.lower()
      s0List = s0.split(" ")
      s1List = s1.split(" ")
   return len(list(set(s0List)&set(s1List)))
ob = Solution()
S = "i love python coding"
T = "coding in python is easy"
print(ob.solve(S,T))

อินพุต

"i love python coding", "coding in python is easy"

ผลลัพธ์

2