ห้องเรียนออนไลน์pythonการพัฒนาซอฟต์แวร์เชิงวัตถุ
Chalothorn Kosakul 07 กรกฎาคม, 2568 78 views
ในการเขียนโปรแกรมด้วยภาษา Python เรามักต้องจัดเก็บข้อมูลหลายรายการไว้ในตัวแปรเดียว ซึ่งสามารถทำได้ด้วยโครงสร้างข้อมูล (Data Structures) หลากหลายประเภท โดยหนึ่งในโครงสร้างที่ใช้บ่อยที่สุดคือ ลิสต์ (List) หากยังไม่เคยรู้จักหรืออยากทบทวนเพิ่มเติม สามารถอ่านได้ที่ ข้อมูลประเภทลิสต์ (List) ในภาษา Python
ในบทความนี้ เราจะพาไปรู้จักกับโครงสร้างข้อมูลอีก 3 ประเภทที่สำคัญ ซึ่งมีลักษณะแตกต่างจากลิสต์ ได้แก่:
แต่ละประเภทมีจุดเด่นเฉพาะตัว และเหมาะสมกับการใช้งานที่แตกต่างกัน พร้อมตัวอย่างเพื่อให้เข้าใจง่าย และนำไปประยุกต์ใช้ได้จริง
Tuple
เป็นโครงสร้างข้อมูลที่คล้ายกับ List
แต่แตกต่างตรงที่ ไม่สามารถแก้ไข เพิ่ม หรือ ลบข้อมูลได้ จึงเหมาะสำหรับเก็บข้อมูลถาวร
my_tuple = (10, 20, 30)
print(my_tuple[1]) # ผลลัพธ์: 20
def get_student_info():
return ("ฉลองสิริ", 20, "IT")
name, age, major = get_student_info()
Set
เป็นโครงสร้างข้อมูลที่ ไม่มีลำดับ และ ไม่มีข้อมูลซ้ำ เหมาะกับงานที่ต้องการคัดกรองหรือหาค่าที่ไม่ซ้ำกัน
my_set.add("Go")
print(my_set) # {'Python', 'Java', 'C++', 'Go'}
การเพิ่มข้อมูล
my_set.add("Go")
print(my_set) # {'Python', 'Java', 'C++', 'Go'}
การลบข้อมูล
my_set.discard("C++") # ไม่มี error แม้ไม่มีข้อมูล
my_set.remove("Java") # ลบ Java ออก ถ้าข้อมูลที่ลบไม่มี จะ error
การวนลูปแสดงผลข้อมูล
for lang in my_set:
print(lang)
สามารถใช้ set
ตรวจสอบความไม่ซ้ำ เช่น ตรวจสอบรายชื่อผู้สมัครที่ห้ามซ้ำ
dict
ใช้เก็บข้อมูลในรูปแบบคู่ คีย์ (key) และ ค่า (value) ซึ่งช่วยให้เข้าถึงข้อมูลได้ง่ายและชัดเจน
student = {
"name": "ชญาน์ทิพย์",
"age": 20,
"major": "IT"
}
print(student["major"]) # ผลลัพธ์: IT
key
แทนที่จะใช้ตำแหน่ง indexการเพิ่มข้อมูล
student["grade"] = "A" # เพิ่มคีย์ใหม่
การแก้ไข/อัปเดตข้อมูล
student["age"] = 20 # แก้ไขค่าใน key 'age'
การลบข้อมูล
del student["major"] # ลบ key 'major'
student.pop("grade") # ลบ 'grade' และคืนค่าที่ถูกลบ
การวนลูปและแสดงผลข้อมูล
for key, value in student.items():
print(f"{key}: {value}")
แสดงเฉพาะคีย์:
for key in student:
print(key)
แสดงเฉพาะค่า:
for value in student.values():
print(value)
โครงสร้างข้อมูลแต่ละประเภทใน Python มีความยืดหยุ่น และเหมาะกับงานที่แตกต่างกัน หากนักเรียนเข้าใจวิธีการจัดการข้อมูล ไม่ว่าจะเป็นการเพิ่ม แก้ไข ลบ หรือวนลูปแสดงผล ก็จะสามารถพัฒนาโปรแกรมได้อย่างมีประสิทธิภาพมากขึ้น