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

การเข้าถึง Index และ Value ในลิสต์ Python

เมื่อทำงานกับลิสต์ มักต้องการดัชนี (Index) และค่า (Value) พร้อมกัน มีหลายวิธี

วิธีที่ 1: ใช้ list.index()

หาดัชนีของค่าเฉพาะเจาะจง

listA = [11, 45, 27, 8, 43]
print("Index of 45:", listA.index(45))

listB = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
print("Index of Wed:", listB.index('Wed'))

ผลลัพธ์

Index of 45: 1
Index of Wed: 3

วิธีที่ 2: ใช้ range และ len

วนลูปดัชนี แล้วเข้าถึงค่าผ่านดัชนี

listA = [11, 45, 27, 8, 43]
print("Given list:", listA)
print("Index and Values:")
print([list((i, listA[i])) for i in range(len(listA))])

ผลลัพธ์

Given list: [11, 45, 27, 8, 43]
Index and Values: [[0, 11], [1, 45], [2, 27], [3, 8], [4, 43]]

วิธีที่ 3: ใช้ enumerate() (แนะนำ)

enumerate() คืนค่า (index, value) ทีละคู่ ใช้ใน for loop ได้โดยตรง

listA = [11, 45, 27, 8, 43]
print("Given list:", listA)
print("Index and Values:")
for index, value in enumerate(listA):
    print(index, value)

ผลลัพธ์

Given list: [11, 45, 27, 8, 43]
Index and Values:
0 11
1 45
2 27
3 8
4 43

ตัวเลือกเพิ่มเติม: enumerate(listA, start=1) เริ่มนับจาก 1 แทน 0

สรุป: enumerate() เป็นวิธีที่ดีที่สุดสำหรับการวนลูปพร้อมดัชนี เนื่องจากเขียนสั้น อ่านง่าย และมีประสิทธิภาพ