บางครั้งเราต้องเพิ่มค่าเพิ่มเติมเข้าไปในลิสต์ที่มีอยู่แล้ว ในบทความนี้เราจะดูวิธีค่าใหม่หรือค่าใหม่ๆ สามารถแทรกเข้าไปในลิสต์ที่มีอยู่แล้วโดยรวมกับแต่ละรายการของลิสต์เดิม
ใช้ลูป For
ถ้าเรามีลิสต์ที่มีรายการยาวเท่ากัน เราสามารถใช้วิธีนี้เพื่อแทรกค่าใหม่ในแต่ละรายการของลิสต์ ในตัวอย่างด้านล่างเรากำลังใช้ลิสต์ของ
ตัวอย่าง
List = [[10, 20], [14, 8], ['Mon', 'Tue']]
print("Given List:\n" + str(List))
s = "Rise"
t = "fast"
result = [[m, n, s, t] for m, n in List]
print("\nNew List:\n" + str(result))
การรันโค้ดข้างต้นให้ผลลัพธ์ดังนี้
ผลลัพธ์
Given List: [[10, 20], [14, 8], ['Mon', 'Tue']] New List: [[10, 20, 'Rise', 'fast'], [14, 8, 'Rise', 'fast'], ['Mon', 'Tue', 'Rise', 'fast']]
ใช้ตัวดำเนินการ +
ตัวดำเนินการ + เมื่อใช้กับลิสต์ จะเพิ่มสมาชิกใหม่เข้าไปในแต่ละรายการของลิสต์ ในตัวอย่างด้านล่างเราพบว่าแม้แต่ลิสต์เองก็สามารถใช้เป็นสมาชิกใหม่ที่จะเพิ่มเข้าไปในลิสต์เดิมได้ อีกทั้งสมาชิกที่มีอยู่ในลิสต์สามารถมีความยาวต่างกันได้
ตัวอย่าง
List = [[1.5, 2.5, 'Tue'], [0.8, 0.9, 'Ocean'], [6.8, 4.3], [9]]
print("Given List:\n" + str(List))
# เลือกลิสต์ที่จะเพิ่ม
s = ["Rise", "Fast"]
result = [sub + [s] for sub in List]
print("\nNew List:\n" + str(result))
การรันโค้ดข้างต้นให้ผลลัพธ์ดังนี้
ผลลัพธ์
Given List: [[1.5, 2.5, 'Tue'], [0.8, 0.9, 'Ocean'], [6.8, 4.3], [9]] New List: [[1.5, 2.5, 'Tue', ['Rise', 'Fast']], [0.8, 0.9, 'Ocean', ['Rise', 'Fast']], [6.8, 4.3, ['Rise', 'Fast']], [9, ['Rise', 'Fast']]]
สรุป: สามารถเพิ่มค่าในซับลิสต์ได้ทั้งแบบ unpack ด้วย list comprehension และแบบต่อลิสต์ด้วย + operator