เมื่อจำเป็นต้องได้รับดัชนีของแต่ละองค์ประกอบของรายการหนึ่งในรายการอื่น จะใช้การวนซ้ำอย่างง่ายและแอตทริบิวต์แจงนับพร้อมกับเมธอด 'setdefault'
นอกจากนี้ยังใช้การทำความเข้าใจรายการและใช้วิธี "รับ"
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -
my_list = [14, 52, 23, 47, 18, 23, 12, 54, 43, 22, 28, 13] print("The list is :") print(my_list) my_list_2 = [17, 52, 13] print("The second list is :") print(my_list_2) element_indices = dict() for index, value in enumerate(my_list): element_indices.setdefault(value, []).append(index) my_result = [element_indices.get(index, [None]) for index in my_list_2] print("The result is :") print(my_result)
ผลลัพธ์
The list is : [14, 52, 23, 47, 18, 23, 12, 54, 43, 22, 28, 13] The second list is : [17, 52, 13] The result is : [[None], [1], [11]]
คำอธิบาย
-
รายการจำนวนเต็มถูกกำหนดและแสดงบนคอนโซล
-
รายการจำนวนเต็มอื่นถูกกำหนดและแสดงบนคอนโซล
-
พจนานุกรมว่างเปล่าถูกสร้างขึ้น
-
รายการแรกจะถูกทำซ้ำโดยใช้ 'แจกแจง'
-
วิธี 'setdefault' ใช้เพื่อกำหนดค่าให้กับองค์ประกอบ
-
นี้ต่อท้ายพจนานุกรมว่าง
-
ความเข้าใจรายการใช้เพื่อวนซ้ำองค์ประกอบ และใช้วิธีการ 'รับ' เพื่อรับค่าดัชนีสำหรับองค์ประกอบในดัชนีที่สอง
-
สิ่งนี้ถูกเก็บไว้ในรายการและถูกกำหนดให้กับตัวแปร
-
รายการนี้จะแสดงเป็นเอาต์พุตบนคอนโซล