Python ตอนที่ 30 แบ่ง String เป็นสามส่วน ด้วยเมธอด rpartition()

เมธอด rpartition() เป็นเมธอดของสตริง ใช้สำหรับค้นหาคำที่ระบุในสตริง โดยจะค้นหาจนเจอทำที่ระบุที่ปรากฏเป็นครั้งสุดท้ายในสตริง แล้วแบ่งสตริงออกเป็น 3 ส่วน แล้วคืนค่ากลับมาเป็น tuple ซึ่งสตริงที่ถูกแบ่งเป็น 3 ส่วนจะประกอบด้วย

  1. สตริงทั้งหมดก่อนที่จะเจอคำที่ใช้ค้นหา
  2. คำที่ใช้ค้นหา
  3. สตริงทั้งหมดหลังจากคำที่ใช้ค้นหา

รูปแบบการใช้งานเมธอด rpartition() จะเป็นดังนี้

 string.rpartition(value)    
  • value คือสตริงที่ใช้ค้นหา

ตัวอย่างการใช้งานเมธอด rpartition()

a = "I love Python. I love Python. I love Python."

print(a.rpartition("love"))
  • ค้นหาคำว่า “love” ในสตริง ซึ่งมีปรากฏอยู่ 3 ที่ ไพธอนจะใช้ตำแหน่งที่เจอคำที่กำหนดเป็นครั้งสุดท้ายเป็นตัวแบ่งสตริง ดังนั้นจึงได้ผลลัพธ์เป็น tuple ดังนี้ (‘I love Python. I love Python. I ‘, ‘love’, ‘ Python.’)

ถ้าไม่เจอคำที่ค้นในสตริงจะได้ผลลัพธ์เป็น tuple ที่ประกอบด้วย 1. สตริงว่าง 2. สตริงว่าง 3. สตริงทั้งหมด

a = "I love Python. I love Python. I love Python."

print(a.rpartition("Love"))
  • จากโค้ดตัวอย่าง ค้นหาคำว่า “Love” (ขึ้นต้นด้วยตัวพิมพ์ใหญ่) ซึ่งไม่มีอยู่ในสตริง ดังนั้นผลลัพธ์จึงเป็น tuple ที่ประกอบด้วย (ค่าว่าง, ค่าว่าง, สตริงทั้งหมด) ดังนี้ (”, ”, ‘I love Python. I love Python. I love Python.’)