ห้องเรียนออนไลน์pythonการพัฒนาซอฟต์แวร์เชิงวัตถุ
Chalothorn Kosakul 30 มิถุนายน, 2568 62 views
ลิสต์ (List) คือโครงสร้างข้อมูลพื้นฐานที่ใช้งานบ่อยในภาษา Python โดยสามารถเก็บข้อมูลหลายค่าไว้ในตัวแปรเดียว และยังสามารถซ้อนกันได้หลายระดับ หากนักเรียนยังไม่คุ้นเคยกับการใช้งานลิสต์มากนัก ครูแนะนำให้อ่านบทความ ข้อมูลประเภทลิสต์ในภาษา Python ก่อน เพื่อวางรากฐานความเข้าใจให้แน่นก่อนเข้าสู่เนื้อหาเรื่องลิสต์ 1 มิติ 2 มิติ และ 3 มิติในบทความนี้ครับ
ลิสต์ที่เรียงข้อมูลในแนวเดียวกัน เช่น รายชื่อ รายการ หรือคะแนนสอบ
fruits = ["apple", "banana", "orange"]
print(fruits[0]) # apple
การเข้าถึงข้อมูล: ใช้ดัชนี [index]
โดยเริ่มนับจาก 0
การวนลูปแสดงข้อมูล:
for fruit in fruits:
print(fruit)
เหมาะสำหรับจัดเก็บข้อมูลที่มีลักษณะเป็นตาราง เช่น คะแนนนักเรียนหลายคนในหลายวิชา
scores = [
[80, 90, 85],
[70, 75, 88],
[60, 65, 70]
]
การเข้าถึงข้อมูล: ใช้ดัชนีแบบ [แถว][คอลัมน์]
เช่น
print(scores[1][2]) # 88
การวนลูปซ้อนกันเพื่อแสดงข้อมูล:
for row in scores:
for score in row:
print(score, end=" ")
print()
ใช้สำหรับข้อมูลที่ซับซ้อนมากขึ้น เช่น คะแนนของนักเรียนในหลายชั้นเรียน หลายห้อง
# ข้อมูลคะแนนนักเรียน หลายชั้น หลายห้อง
school_scores = [
[ # ชั้น ปวช.3
[80, 85, 90], # ห้อง ชทท.66.1
[70, 75, 65] # ห้อง ชทท.66.2
],
[ # ชั้น ปวช.2
[60, 70, 75] # ห้อง ชทท.67.1
]
]
การเข้าถึงข้อมูล:
print(school_scores[0][0][1]) # ปวช.3 ห้อง ชทท.66.1 วิชาที่ 2 => 85
print(school_scores[1][0][2]) # ปวช.2 ห้อง ชทท.67.1 วิชาที่ 3 => 75
school_scores = [
[ # ชั้น ปวช.3
[80, 85, 90], # ห้อง ชทท.66.1
[70, 75, 65] # ห้อง ชทท.66.2
],
[ # ชั้น ปวช.2
[60, 70, 75] # ห้อง ชทท.67.1
]
]
grade_names = ["ปวช.3", "ปวช.2"]
room_names = [
["ชทท.66.1", "ชทท.66.2"],
["ชทท.67.1"]
]
for i in range(len(school_scores)):
print(f"ชั้น {grade_names[i]}")
for j in range(len(school_scores[i])):
print(f" ห้อง {room_names[i][j]}: ", end="")
for score in school_scores[i][j]:
print(score, end=" ")
print()
print()
ผลลัพธ์ที่ได้:
ชั้น ปวช.3
ห้อง ชทท.66.1: 80 85 90
ห้อง ชทท.66.2: 70 75 65
ชั้น ปวช.2
ห้อง ชทท.67.1: 60 70 75