การลบองค์ประกอบด้วยสไลซ์ใน Python
สไลซ์ถูกใช้อย่างแพร่หลายใน Python
รวมถึงสำหรับการลบองค์ประกอบที่ระบุ
ด้วย ในกรณีนี้จะใช้ตัวดำเนินการ
del และระบุสไลซ์ที่ต้องการ
ไว้ข้างๆ มาลบกลุ่มข้อมูลต่อไปนี้
จากรายการของเรากัน:
lst = [1, 2, 3, 4, 5, 6]
del lst[1:4]
print(lst) # จะได้ [1, 5, 6]
หากต้องการลบองค์ประกอบทั้งหมดออกจากรายการ เพียงระบุสเต็ปในสไลซ์เท่ากับ หนึ่ง:
lst = [1, 2, 3, 4, 5, 6]
del lst[::1]
print(lst) # จะได้ []
อย่างไรก็ตาม หากต้องการลบอักขระออกจาก สตริง จะเกิดข้อผิดพลาดขึ้น สาเหตุเป็นเพราะ สตริงใน Python นั้นเปลี่ยนแปลงค่าไม่ได้:
txt = '123456789'
del txt[1:3] # จะเกิดข้อผิดพลาด
กำหนดรายการ:
lst = [1, 2, 3, 4, 5, 6]
ลบทุกองค์ประกอบที่มีตำแหน่งเป็นเลขคี่ออกจากมัน
กำหนดรายการ:
lst = [1, 2, 3, 4, 5, 6, 7, 8]
เขียนโค้ดเพื่อให้ได้สไลซ์ต่อไปนี้:
[8, 6, 4, 2]