Python tuple
— python — 1 min read
ทูเพิล (Tuple) เป็นโครงสร้างข้อมูลที่ใช้ในภาษา Python เพื่อเก็บค่าหลาย ๆ ค่าที่ไม่สามารถเปลี่ยนแปลงได้ (immutable) ซึ่งหมายความว่าค่าในทูเพิลไม่สามารถเพิ่ม, ลบ, หรือแก้ไขได้หลังจากที่ถูกสร้ างขึ้น
การสร้างทูเพิลใน Python สามารถทำได้โดยใช้วงเล็บ () หรือฟังก์ชัน tuple() ดังตัวอย่าง:
fruits = ("apple", "banana", "cherry")
ในตัวอย่างนี้เราสร้างทูเพิล fruits ที่เก็บค่าสตริง "apple", "banana", และ "cherry"
ทูเพิลใช้ในกรณีที่ต้องการเก็บค่าที่ไม่สามารถเปลี่ยนแปลงได้ เช่น ข้อมูลที่เป็นค่าคงที่ที่ไม่ต้องการให้มีการเปลี่ยนแปลง หรือ เก็บข้อมูลหลายค่าที่เกี่ยวข้องกันเป็นชุด
เราสามารถเข้าถึงค่าในทูเพิลได้โดยใช้ดัชนี (index) เหมือนกับการเข้าถึงสมาชิกในลิสต์ ดังตัวอย่าง:
fruits = ("apple", "banana", "cherry")
# เข้าถึงสมาชิกในทูเพิลด้วยดัชนีprint(fruits[0]) # ผลลัพธ์ที่คืนค่าคือ "apple"print(fruits[1]) # ผลลัพธ์ที่คืนค่าคือ "banana"print(fruits[2]) # ผลลัพธ์ที่คืนค่าคือ "cherry"
# ไม่สามารถเปลี่ยนแปลงค่าในทูเพิลได้fruits[0] = "orange" # จะเกิดข้อผิดพลาด (TypeError)
ในตัวอย่างนี้เราใช้การเข้าถึงสมาชิกในทูเพิลด้วยดัชนี และเราก็เห็นว่าไม่สามารถเปลี่ยนแปลงค่าในทูเพิลได้ เนื่องจากทูเพิลเป็น immutable
ทูเพิลใน Python มีความสามารถที่น่าสนใจอีกอย่างคือการแพ็คและแอนแพ็ค (packing and unpacking) คือการกำหนดค่าให้กับทูเพิลหลาย ๆ ตัวแปรในคราวเดียว หรือกำหนดค่าให้กับตัวแปรหลาย ๆ ตัวจากทูเพิล ดังตัวอย่าง:
# แพ็คและแอนแพ็คทูเพิลfruits = ("apple", "banana", "cherry")(a, b, c) = fruits # แพ็คค่าจาก fruits ให้กับตัวแปร a, b, cprint(a) # ผลลัพธ์ที่คืนค่าคือ "apple"print(b) # ผลลัพธ์ที่คืนค่าคือ "banana"print(c) # ผลลัพธ์ที่คืนค่าคือ "cherry"
# แลกค่าระหว่างตัวแปรด้วยการแอนแพ็คทูเพิลx = 10y = 20(x, y) = (y, x) # แลกค่าระหว่าง x และ y โดยใช้แอนแพ็คทูเพิลprint(x) # ผลลัพธ์ที่คืนค่าคือ 20print(y) # ผลลัพธ์ที่คืนค่าคือ 10
ในตัวอย่างนี้เราใช้การแพ็คและแอนแพ็คทูเพิลเพื่อกำหนดค่าให้กับตัวแปรหลาย ๆ ตัวแปรในคราวเดียว และแลกค่าระหว่างตัวแปรด้วยแอนแพ็คทูเพิล
ทูเพิลในภาษา Python มีการใช้งานและประโยชน์ในสถานการณ์ต่าง ๆ เช่น การคืนค่าพร้อมกันจากฟังก์ชันหลาย ๆ ค่า, การแก้ไขค่าคงที่ในฟังก์ชัน, การส่งค่ากลับจากฟังก์ชันในรูปแบบของทูเพิล เป็นต้น การใช้งานทูเพิลเป็นอีกหนึ่งวิธีในการจัดการและใช้งานข้อมูลในภาษา Python