รายการในภาษาไพธอน

รายการในภาษาไพธอน

ในบทความนี้ เราจะอธิบายเกี่ยวกับรายการในภาษาไพธอน

คุณสามารถเรียนรู้การดำเนินการต่าง ๆ กับรายการและการใช้ list comprehensions พร้อมตัวอย่างโค้ด

YouTube Video

รายการในภาษาไพธอน

ในภาษาไพธอน โครงสร้างข้อมูลที่ถูกเรียกเป็นอาร์เรย์มักจะถูกใช้งานเป็น 'รายการ' รายการในภาษาไพธอนมีความยืดหยุ่นสูงและรองรับการดำเนินการดังต่อไปนี้:

สร้างรายการ

1# Create an empty list
2my_list = []
3print(my_list)
4
5# Create a list with elements
6my_list = [1, 2, 3, 4, 5]
7print(my_list)
  • คุณสามารถสร้างลิสต์เปล่าหรือกำหนดสมาชิกเริ่มต้นได้

การเข้าถึงและแก้ไของค์ประกอบในรายการ

1my_list = [1, 2, 3, 4, 5]
2print(my_list)  # [1, 2, 3, 4, 5]
3
4element = my_list[0]  # Get the element at index 0
5print(element)  # 1
6
7my_list[1] = 10  # Change the element at index 1 to 10
8print(my_list)  # [1, 10, 3, 4, 5]
  • สามารถเข้าถึงหรือแก้ไขสมาชิกของลิสต์ได้โดยระบุค่าอินเด็กซ์

การหาความยาวของรายการ

1my_list = [1, 2, 3, 4, 5]
2
3length = len(my_list)
4print(my_list)
5print(length)
  • โดยใช้ฟังก์ชัน len() คุณสามารถรับจำนวนสมาชิกในลิสต์ได้

การเพิ่มและแทรกสมาชิกลงในลิสต์

1my_list = [1, 2, 3, 4, 5]
2
3my_list.append(6)
4print(my_list)
  • โดยใช้เมธอด append() คุณสามารถเพิ่มสมาชิกไปยังท้ายลิสต์ได้
1my_list = [1, 2, 3, 4, 5]
2
3my_list.insert(2, "A")  # Insert "A" at index 2
4print(my_list)
  • โดยใช้เมธอด insert() คุณสามารถแทรกสมาชิกในตำแหน่งใดก็ได้

ลบองค์ประกอบออกจากรายการ

1my_list = [1, 2, 3, 4, 5]
2
3del my_list[2]  # Delete the element at index 2
4print(my_list)
5
6removed_element = my_list.pop(0)  # Delete and return the element at index 0
7print(removed_element)
8print(my_list)
  • โดยใช้คำสั่ง del หรือเมธอด pop() คุณสามารถลบสมาชิกที่ตำแหน่งที่กำหนดได้ เมธอด pop() จะส่งค่าสมาชิกที่ถูกลบกลับมา
1my_list = [1, 2, 3, 4, 5]
2
3my_list.remove(5)  # Remove the first occurrence of 5 from the list
4print(my_list)
  • โดยใช้เมธอด remove() คุณสามารถลบสมาชิกตัวแรกที่มีค่าตามที่กำหนดได้

การตัดรายการ (List Slicing)

1my_list = [1, 2, 3, 4, 5]
2
3print(my_list[1:3])  # [2, 3]
4print(my_list[:3])   # [1, 2, 3]
5print(my_list[2:])   # [3, 4, 5]
6print(my_list[:])    # [1, 2, 3, 4, 5]
  • ไวยากรณ์การตัดลิสต์ [start:end] จะดึงสมาชิกตั้งแต่ start ถึง end - 1 คุณสามารถละเว้น start หรือ end ก็ได้

การเรียงลำดับลิสต์

1my_list = [2, 1, 5, 4, 3]
2print(my_list)  # [2, 1, 5, 4, 3]
3
4my_list.sort()  # Sort in ascending order (modifies the list)
5print(my_list)  # [1, 2, 3, 4, 5]
6
7my_list.sort(reverse=True)  # Sort in descending order
8print(my_list)  # [5, 4, 3, 2, 1]
  • เมธอด sort() สามารถเรียงลำดับลิสต์ได้ทั้งจากน้อยไปมากและมากไปน้อย
1my_list = [3, 1, 4, 2]
2sorted_list = sorted(my_list)
3print(my_list)       # [3, 1, 4, 2]
4print(sorted_list)   # [1, 2, 3, 4]
  • ฟังก์ชัน sorted() ช่วยให้คุณสร้างลิสต์ใหม่ที่จัดเรียงแล้วโดยไม่เปลี่ยนแปลงลิสต์ต้นฉบับ

การสร้างลิสต์ในลำดับย้อนกลับ

1my_list = [1, 2, 3, 4, 5]
2
3my_list.reverse()
4print(my_list)
  • เมธอด reverse() สามารถสลับลำดับสมาชิกในลิสต์ได้

การทำความเข้าใจรายการ (List Comprehension)

ในภาษา Python คุณสามารถใช้ไวยากรณ์ list comprehension อันทรงพลังเพื่อสร้างลิสต์ได้อย่างกระชับ list comprehension ทำให้คุณสามารถเขียนขั้นตอนสร้างลิสต์ใหม่โดยใช้ for-loop ได้ในบรรทัดเดียว คุณยังสามารถใช้เงื่อนไขเพื่อดึงสมาชิกบางส่วนที่ต้องการได้ด้วย

 1# Generate squares of numbers from 0 to 9
 2squares = [x**2 for x in range(10)]
 3print(squares)  # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
 4
 5# Use a condition to extract squares of even numbers only
 6even_squares = [x**2 for x in range(10) if x % 2 == 0]
 7print(even_squares)  # [0, 4, 16, 36, 64]
 8
 9# Store either the square or the original number based on a condition
10squares_or_original = [x**2 if x % 2 == 0 else x for x in range(10)]
11print(squares_or_original)
12# Output: [0, 1, 4, 3, 16, 5, 36, 7, 64, 9]
  • ด้วย list comprehension คุณสามารถสร้างลิสต์ใหม่ด้วยการใช้ลูปและเงื่อนไขได้อย่างกระชับ โดยการใช้ if และ if-else คุณสามารถสร้าง list comprehension ที่ดึงข้อมูลหรือสร้างค่าต่างๆ ตามเงื่อนไขได้

การเชื่อมโยงรายชื่อ

 1# Concatenate two lists using the + operator
 2a = [1, 2, 3]
 3b = [4, 5, 6]
 4combined = a + b
 5print(combined)  # [1, 2, 3, 4, 5, 6]
 6
 7# Extend an existing list with another list
 8a = [1, 2, 3]
 9b = [4, 5, 6]
10a.extend(b)
11print(a)  # [1, 2, 3, 4, 5, 6]
12
13# Concatenate multiple lists using unpacking (*)
14a = [1, 2, 3]
15b = [4, 5, 6]
16c = [7, 8, 9]
17merged = [*a, *b, *c]
18print(merged)  # [1, 2, 3, 4, 5, 6, 7, 8, 9]
  • ในภาษา Python คุณสามารถเชื่อมโยงรายชื่อโดยใช้ตัวดำเนินการ +, เมธอด extend() หรือไวยากรณ์การแยกแพ็ค (*) โดยปกติจะใช้ + หรือ * เมื่อสร้างรายชื่อใหม่ และใช้ extend() เมื่อต้องการอัพเดตรายชื่อที่มีอยู่แล้ว

สรุป

รายการ (Lists) เป็นโครงสร้างข้อมูลพื้นฐานใน Python และถูกใช้งานในหลาย ๆ สถานการณ์ มีฟีเจอร์ที่ยืดหยุ่นและเป็นประโยชน์มากมาย หากเชี่ยวชาญจะทำให้การเขียนโปรแกรมมีประสิทธิภาพมากขึ้น

คุณสามารถติดตามบทความข้างต้นโดยใช้ Visual Studio Code บนช่อง YouTube ของเรา กรุณาตรวจสอบช่อง YouTube ด้วย

YouTube Video