มีหลายวิธีในการดึงสมาชิกตัวสุดท้ายของลิสต์ใน Python
วิธีที่ 1: ใช้ Index แบบคำนวณ (len - 1)
numbers = [1, 2, 3, 4, 5]
print(f"Last element: {numbers[len(numbers) - 1]}")
Last element: 5
วิธีที่ 2: ใช้ Negative Index (แนะนำ)
Python รองรับ Negative Index: -1 = ตัวสุดท้าย, -2 = ตัวก่อนสุดท้าย, ฯลฯ
numbers = [1, 2, 3, 4, 5]
print(f"Last element: {numbers[-1]}")
Last element: 5
วิธีที่ 3: ใช้ pop()
pop() ลบและคืนค่าสมาชิกตัวสุดท้าย แต่จะเปลี่ยนลิสต์เดิม
numbers = [1, 2, 3, 4, 5]
print(f"Last element: {numbers.pop()}")
print(f"Remaining list: {numbers}")
Last element: 5 Remaining list: [1, 2, 3, 4]
สรุปการเลือกใช้
| วิธี | เปลี่ยนลิสต์เดิม | ความเร็ว | เหมาะสำหรับ |
|---|---|---|---|
list[-1] | ไม่ | เร็วที่สุด | อ่านค่าเพียงอย่างเดียว (Best practice) |
list[len-1] | ไม่ | ช้ากว่า | เข้าใจง่ายสำหรับมือใหม่ |
list.pop() | ใช่ (ลบตัวสุดท้าย) | เร็ว | ต้องการนำค่าออกใช้และลบทิ้ง |
โปรทิป: ใช้ list[-1] เป็นหลัก สำหรับเข้าถึงหลายตัวจากท้าย ใช้ Slicing: list[-3:] (3 ตัวสุดท้าย)