10 ก.ค. 2021 เวลา 10:41 • วิทยาศาสตร์ & เทคโนโลยี
Python101 : บทที่ 6 การใช้งาน List
มาต่อเรื่องการใช้ List ในรูปแบบต่าง ๆ ในภาษา Python 💻
EP6 : Data Type List
ถ้าใครยังไม่ได้กดติดตาม หรืออ่านบทพื้นฐานก่อนหน้านี้อ่านได้ที่
บทที่ 1 เริ่มพื้นฐาน จากบทที่ 1 ของ Python101 ไปอ่านได้ที่
บทที่ 2 คำสั่งการเขียนโปรแกรมที่ต้องรู้ (algorithm) อ่านได้ที่
บทที่ 3 Built-in Data Types อ่านได้ที่
บทที่ 4 การใช้งาน String (1) อ่านได้ที่
บทที่ 5 การใช้งาน String (2)
💻 เริ่มเปิดโปรแกรมสำหรับเขียน Python ได้ที่เวป Colab -->
กดปุ่ม New Notebook และแก้ไขชื่อ Notebook ตามรูปที่ 1 เป็น
ชื่อ Python101_Lession6.ipynb
รูปที่ 1 : ตั้งชื่อ Python101_Lession6.ipynb
มาเริ่มสร้าง ลิสต์ หรือ List ของข้อมูลตัวเลข โดย สร้างตัวแปร ชื่อว่า nums ตามตัวอย่างรูปที่ 2 พิมพ์ ตามด้านล่าง
nums = [3, 4, 5, 6, 7, 8, 4, 32, 34, 45, 23, 56]
print(nums)
สร้าง List เก็บไว้ในตัวแปร nums แล้วใช้คำสั่ง print เพื่อแสดงข้อมูลใน list nums
รูปที่ 2 List Print
นับจำนวนของข้อมูลที่อยู่ใน List จากคำสั่ง Len() จากจำนวนข้อมูลใน List ที่มีตัวเลขทั้งหมดที่ 12 จำนวน
print(len(nums))
ตามตัวอย่างในรูปที่ 3 การนับลำดับตัวเลขใน List ให้นับเริ่มจาก 0 เป็น index ที่ 0 , 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
รูปที่ 3 นับจำนวนข้อมูลใน List
เพิ่มข้อมูลที่อยู่ใน List ด้วยคำสั่ง append โดยการเพิ่มตัวเลข 15 เข้าไปท้าย List
nums.append(15)
print(nums)
ตามรูปที่ 4 พิมพ์ข้อมูลในตัวแปร nums
รูปที่ 4 เพิ่มข้อมูลใน List โดยคำสั่ง append
จากการใช้คำสั่ง append ทีท้าย List มาเป็นการแทรกข้อมูลใน List
โดยตัวอย่างรูปที่ 5 เป็นการเพิ่มข้อมูล เลข 999 ไปที่ตำแหน่งที่ 0
ใน list เราจะเริ่มนับลำดับ หรือ index ที่ 0 , 1, 2, 3, 4 ....12
nums.insert(0, 999)
print(nums)
และลองอีกชุด โดยการเพิ่มไปที่ลำดับที่ 2 เพิ่มตัวเลข 88 เข้าไป
nums.insert(2, 88)
print(nums)
รูปที่ 5 เพิ่มข้อมูลใน List โดยคำสั่ง insert
ต่อไปเมื่อต้องการลบข้อมูลออกจาก List บ้างละ ให้ใช้คำสั่ง .remove
เช่น จากตัวอย่าง nums.remove(8) คือเอาเลข 8 ออกไปจาก List
nums.remove(8)
print(nums)
ดูผลลัพธ์ตามรูปที่ 6
รูปที่ 6 ลบข้อมูลใน List โดยคำสั่ง remove
มาสร้าง List ตัวใหม่ในโปรแกรม ตามรูปด้านล่าง
thislist = ["apple", "banana", "cherry"]
ถ้าต้องการ Access ข้อมูลใน List สร้างอ้างอิงลำดับ (index) ใน List เริ่มจาก 0 , 1, 2 ตามตัวอย่างใน รูปที่ 7
ถ้าต้องการพิมพ์ค่า ลำดับที่ 2 จะต้องอ้างอิง index ที่ 1 จะได้ค่าเป็น banana
print(thislist[1])
ให้อ้างอิง ด้วยชื่อ List และเครื่องหมายวงเล็บ [ เลข index ]
รูปที่ 7 พิมพ์ข้อมูลใน List ตามลำดับที่อ้างถึง
ถ้าเราพิมพ์ลำดับผิด เช่น ลำดับ มีแค่ 0, 1,2 แต่เราไปพิมพ์เป็นเลข 3 แทน โปรแกรมจะแสดงค่า Error ออกมาเป็น IndexError : list index out of range
หมายความว่า ค่า index ที่เราระบุ ไม่ได้อยู่ในลำดับ List ที่เราอ้างถึง ตามตัวอย่างรูปที่ 8
รูปที่ 8 พิมพ์ลำดับผิด ที่อ้างถึงใน List
อีกกรณี ถ้าเราระบุค่าเป็น revert หรือกลับค่ากันกับ ค่า index ปกติ เช่นแทนที่จะเป็น 0,1,2 แต่เราจะให้นับ index จากท้าย จะนับ ว่า -1 , -2 ,-3 เช่น
thislist[-1] จะเริ่มนับจากท้าย คือ cherry --> banana --> apple แบบนี้เป็นต้น
thislist = ["apple", "banana", "cherry"]
print(thislist[-1])
ถ้าพิมพ์ thislist[-3] จะหมายถึง apple ตามตัวอย่างที่ 9 ให้แสดงค่าจะท้ายมา
โดยระบุ index ติดลบ 1
รูปที่ 9 ระบุ index เป็นค่าลบใน List
ในกรณีจะอ้างถึงข้อมูลหลายๆ ค่าใน List เช่น
ตัวอย่าง LIst ใหม่ มีข้อมูล ทั้งหมด 7 ค่า
เราต้องการข้อมูลตั้งแต่ Index ลำดับที่ 2 ถึงลำดับที่ 5
อย่าลืม index เริ่มนับที่ 0 ,1,2,3,4,5,6,
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[2:5])
เมื่อพิมพ์ตามตัวอย่างรูปที่ 10 จะได้ผลลัพธ์ตามตัวอย่าง
รูปที่ 10 ดึงข้อมูลลำดับที่ 2 ถึง 5
ขณะเดียวกัน ถ้าต้องการข้อมูลตั้งแต่เริ่มต้น index 0 ไปเป็นจำนวน 4 ลำดับ สามารถใช้คำสั่งอ้างอิง list ว่า thislist[:4]
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[:4])
ตามตัวอย่างในรูปที่ 11
รูปที่ 11 ดึงข้อมูลลำดับที่ 0 ไปอีก 4 ลำดับ
สำหรับกรณีจะอ้างอิงข้อมูลตั้งแต่ลำดับที่กำหนดไปจนลำดับสุดท้าย
เช่น ตามตัวอย่าง ต้องการข้อมูลตั้งแต่ index ลำดับที่ 2 ไปจนถึงตำแหน่งสุดท้ายของ List ให้ใช้ คำสั่ง thislist[2:]
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[2:])
จะสังเกตว่า จากตัวอย่างที่ 10 และ 11 เครื่อง : อยู่หน้า กับ อยู่หลังตัวเลข จะแสดงความหมายที่ต่างกัน ถ้าอยู่หน้าจะหมายถึงจำนวนที่จะต้องดึงมาแสดง
แต่ถ้า : อยู่ข้างหลัง จะหมายถึงดึงตั้งแต่ลำดับที่ของตัวเลขระบุ ไปจนถึงตัวสุดท้าย
ตามตัวอย่างผลลัพธ์ในรูปที่ 12
รูปที่ 12 ข้อมูล index ที่ 2 ไปจนถึงท้าย List
กรณีที่ revert หรือระบุ index ติดลบ ตัวอย่างที่ 13
จาก List เดิม ถ้าใส่ print(thislist[-4:]) จะหมายถึง ดึงข้อมูลทั้งหมด ตั้งแต่ลำดับที่ -4 นั้นก้อคือ orange นับจากท้ายมา ดึงมาให้หมด ตั้งแต่ orange , kiwi , melon , mango ตามรูป
รูปที่ 13 ข้อมูล index ที่ -4 ไปจนถึงท้าย List
ตัวอย่างสุดท้ายของเรื่อง List คือ ต่อจากรูปที่ 13
จาก List เดิม ถ้าใส่ thislist[-4:-1]
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[-4:-1])
จะหมายถึง ดึงข้อมูลทั้งหมด ตั้งแต่ลำดับที่ -4 นั้นก้อคือ orange นับจากท้ายมา ดึงมาจนถึงลำดับที่ -1 นั้นคือ mango ตั้งแต่ orange , kiwi , melon ตามรูปในตัวอย่างที่ 14
รูปที่ 14 ข้อมูล index ที่ -4 ไปจนถึงลำดับที่ -1
สำหรับวันนี้ เรื่อง List จบไว้แค่นี้ก่อนครับ 😊
====================================
ลองทบทวนแล้วเอาไปปรับใช้ดู หรือศึกษาเพิ่มเติมใต้ลิงค์นี้
ถ้ามีคำถาม หรือ comment ไว้ใต้บทความนี้ได้เลย
เอกสารอ้างอิง จาก :
====================================

ดูเพิ่มเติมในซีรีส์

โฆษณา