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

จะลบรายการดัชนีออกจากรายการอื่นใน python ได้อย่างไร


เรามีสองรายการที่นี่ L1 รายการวัตถุที่จะลบองค์ประกอบบางอย่างและ L2 มีดัชนีขององค์ประกอบที่จะลบ

>>> L1=[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> L2=[2, 4, 6]

ในการลบองค์ประกอบที่ดัชนีที่แสดงใน L2 ขั้นแรก เราสร้างการแจงนับวัตถุจาก L1 ฟังก์ชัน enumerate() ส่งคืนอ็อบเจกต์ enumerate ซึ่งเป็นชุดของทูเพิลสององค์ประกอบ ซึ่งสอดคล้องกับดัชนีและองค์ประกอบในรายการ

จากนั้นเราเรียกใช้ for loop ที่มีตัวแปรสองตัวบนตัวแจงนับนี้ และเปรียบเทียบแต่ละดัชนีกับองค์ประกอบใน L2 หากพบ รายการที่เกี่ยวข้องใน L1 จะถูกลบออก นี่คือวิธีแก้ปัญหา

>>> e=enumerate(L1)
>>> for i,j in e:
if i in L2:
del L1[i]

ผลลัพธ์ L1 จะมีองค์ประกอบอื่นนอกเหนือจากที่ดัชนีที่กล่าวถึงใน L2

>>> L1
[1, 2, 4, 5, 7, 8]