List เป็นโครงสร้างข้อมูลที่ใช้บ่อยที่สุดของ Python เมื่อเราต้องการเพิ่มองค์ประกอบเข้าไปใน List การขยาย List จะเกิดขึ้น สามารถทำได้ใน 5 วิธีที่แตกต่างกัน ดังนี้
1. ใช้ตัวดำเนินการ Plus (+)
ที่นี่เราเพียงแค่เพิ่มองค์ประกอบของรายการใหม่โดยใช้ตัวดำเนินการ + พฤติกรรมคล้ายกับการแก้ไขค่าของตัวแปร
ตัวอย่าง
list = ['Mon', 'Tue', 'Wed'] list = list + ['Thu', 'Fri'] print(list)
ผลลัพธ์
['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
2. ใช้ Slicing
เราสามารถใช้ slicing เพื่อเพิ่มองค์ประกอบที่ท้ายของรายการ ที่นี่เราใช้ฟังก์ชัน len() เพื่อประมาณความยาวของรายการ แล้ว slice จากท้ายและกำหนดค่าจากรายการใหม่
ตัวอย่าง
list = ['Mon', 'Tue', 'Wed'] list[len(list):] = ['Thu', 'Fri'] print(list)
ผลลัพธ์
['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
3. ใช้ append()
เราสามารถต่อท้ายองค์ประกอบที่ท้ายของรายการด้วยฟังก์ชัน append() เราสามารถต่อท้ายองค์ประกอบทีละตัว หรือต่อท้ายรายการอีกอันหนึ่งซึ่งยังคงเป็นรายการแม้หลังจาก append
ตัวอย่าง
list = ['Mon', 'Tue', 'Wed']
list.append('Thu')
list.append('Fri')
list.append(['Sat', 'Sun'])
print(list)
ผลลัพธ์
['Mon', 'Tue', 'Wed', 'Thu', 'Fri', ['Sat', 'Sun']]
4. ใช้ extend()
extend() เป็นฟังก์ชันที่คล้าย append โดยที่องค์ประกอบถูกเพิ่มเข้าไปในรายการ แต่ไม่เหมือน append() เราสามารถเพิ่มรายการอีกอันหนึ่งและองค์ประกอบใหม่ที่เพิ่มเข้ามาไม่ปรากฏเป็นรายการภายในรายการ
ตัวอย่าง
list1 = ['Mon', 'Tue', 'Wed'] list2 = ['Thu', 'Fri', 'Sat'] list1.extend(list2) print(list1)
ผลลัพธ์
['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
5. ใช้ chain()
เราสามารถใช้ chain() จากไลบรารี itertools ซึ่งต่อหน้าต่อหลังหลายรายการเข้าด้วยกัน ที่นี่เราสามารถมีมากกว่าสองรายการที่ต่อกันและสุดท้ายองค์ประกอบทั้งหมดจะเป็นรายการสุดท้ายเดียว
ตัวอย่าง
from itertools import chain list1 = ['Mon', 'Tue', 'Wed'] list2 = ['Thu', 'Fri'] list3 = ['Sat', 'Sun'] list4 = list(chain(list1, list2, list3)) print(list4)
ผลลัพธ์
['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']