
เขียนโปรแกรมภาษา Python ตอนที่ 132 ลบข้อมูลใน Dictionary ด้วยเมธอด pop()
เมธอด pop()
ใช้สำหรับลบข้อมูลใน Dictionary ตามคีย์ที่ระบุ โดยจะคืนค่ากลับมาเป็นค่าของข้อมูลที่ถูกลบ (ตามคีย์ที่ระบุ)
รูปแบบการใช้งาน
dictionary.pop(key, defaultvalue)
- key คือคีย์ของข้อมูลที่ต้องการลบใน Dictionary (จำเป็นต้องระบุ)
- defaultvalue (ไม่ระบุก็ได้) คือค่าที่ต้องการให้รีเทิร์นกลับออกมาในกรณีที่ไม่มีข้อมูลตาม key ที่ระบุ
phone = { "model": "iPhone 14", "year": "2022", "price": "39,000", "color": "white" } phone.pop("year") print(phone)
- บรรทัดที่ 8 ใช้เมธอด
pop()
ลบข้อมูลออกจาก Dictionary โดยระบุคีเป็น"year"
- บรรทัดที่ 9 สั่งให้แสดงข้อมูลใน Dictionary หลังจากลบข้อมูลออกแล้ว
ผลลัพธ์ ข้อมูลที่มีคีย์ "year"
ถูกลบออกไปจาก Dictionary
{‘model’: ‘iPhone 14’, ‘price’: ‘39,000’, ‘color’: ‘white’}
ถ้าต้องการทราบว่าข้อมูลใดถูกลบออกจาก Dictionary ให้สร้างตัวแปรขึ้นมารับค่าส่งกลับจากเมธอด pop()
phone = { "model": "iPhone 14", "year": "2022", "price": "39,000", "color": "white" } removed = phone.pop("year") print("ข้อมูลที่ถูกลบ") print(removed)
- บรรทัดที่ 8 สร้างตัวแปรขึ้นมารับค่าที่รีเทิร์นจากเมธอด pop()
- บรรทัดที่ 10-11 แสดงข้อมูลที่ถูกลบออก
ผลลัพธ์ จะได้ค่าของข้อมูลที่ถูกลบออกไป
ข้อมูลที่ถูกลบ
2022
ถ้าคีย์ที่ระบุไม่มีอยู่จริงใน Dictionary ต้นทาง จะเกิด Error
phone = { "model": "iPhone 14", "year": "2022", "price": "39,000", "color": "white" } removed = phone.pop("owner") print(removed)
- บรรทัดที่ 8 สั่งให้ลบข้อมูลโดยระบุคีย์เป็น
"owner"
ซึ่งไม่มีอยู่จริงใน Dictionary ต้นทาง
ผลลัพธ์คือเกิด Error เพราะสั่งให้ลบข้อมูลที่ไม่มีอยู่จริง

วิธีป้องกันคือ ระบุพารามิเตอร์ defaultvalue
เพิ่มเข้าไปในเมธอด pop()
เพื่อให้คืนค่านี้กลับออกมาในกรณีที่ไม่มีข้อมูลตามคีย์ที่ระบุ
phone = { "model": "iPhone 14", "year": "2022", "price": "39,000", "color": "white" } removed = phone.pop("owner", "ไม่มีข้อมูลตามที่ระบุ") print(removed)
- บรรทัดที่ 8 เรียกใช้เมธอด
pop()
โดยระบุพารามิเตอร์defaultvalue
(ข้อความ “ไม่มีข้อมูลตามที่ระบุ”) เข้าไปด้วย
ผลลัพธ์ ถ้าไม่มีข้อมูลตามคีย์ที่ระบุ จะไม่เกิด Error แต่จะคืนค่าเป็นข้อความที่ระบุกลับออกมาแทน
ไม่มีข้อมูลตามที่ระบุ