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

Python – ดึงสมาชิกจากช่วงดัชนีในลิสต์

เมื่อต้องการดึงสมาชิกจากช่วงดัชนี (ranges) ในลิสต์ สามารถใช้ลูป iteration และเมธอด extend() ได้

ตัวอย่าง

my_list = [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19]
print("The list is :")
print(my_list)
range_list = [(12, 14), (17, 18), (22, 28)]
print("The list is :")
print(range_list)
my_result = []
for element in range_list:
    my_result.extend(my_list[element[0] : element[1] + 1])
print("The result is :")
print(my_result)

ผลลัพธ์

The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19]
The list is : [(12, 14), (17, 18), (22, 28)]
The result is : [99, 19]

คำอธิบาย

  • กำหนดลิสต์ข้อมูลและลิสต์ของ tuple ที่แทนช่วงดัชนี (เริ่มต้น, สิ้นสุด)

  • สร้างลิสต์ว่างสำหรับผลลัพธ์

  • วนลูปผ่านแต่ละช่วงใน range_list ใช้ slicing ดึงข้อมูลจาก my_list ตั้งแต่ดัชนีเริ่มต้นถึงสิ้นสุด+1 แล้วเพิ่มเข้าไปในผลลัพธ์ด้วย extend()

  • แสดงผลลัพธ์ (หมายเหตุ: ดัชนีในตัวอย่างเกินขอบเขตลิสต์ จึงได้เฉพาะสมาชิกสุดท้าย)