Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ผนวกลิสต์หลายลิสต์พร้อมกันใน Python

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

ใช้ตัวดำเนินการ +

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

ตัวอย่าง

listA = ['Mon', 'Tue', 'Wed']
listB = ['2 pm', '11 am', '1 pm']
listC = [1, 3, 6] # Given lists
print("Given list A: ", listA)
print("Given list B: ", listB)
print("Given list C: ", listC)
# using + operator
res_list = listA + listB + listC
# printing result
print("Combined list is : ", res_list)

Output

การรันโค้ดข้างต้นให้ผลลัพธ์ดังนี้ -

Given list A: ['Mon', 'Tue', 'Wed']
Given list B: ['2 pm', '11 am', '1 pm']
Given list C: [1, 3, 6]
Combined list is : ['Mon', 'Tue', 'Wed', '2 pm', '11 am', '1 pm', 1, 3, 6]

ด้วย zip

ฟังก์ชัน zip รวบรวมองค์ประกอบจากแต่ละลิสต์จากดัชนีเดียวกันแล้วไปดัชนีถัดไป การผนวกแบบนี้มีประโยชน์เมื่อคุณต้องการรักษาองค์ประกอบจากลิสต์ที่อยู่ในตำแหน่งดัชนีเดียวกันไว้ด้วยกัน

ตัวอย่าง

listA = ['Mon', 'Tue', 'Wed']
listB = ['2 pm', '11 am', '1 pm']
listC = [1, 3, 6] # Given lists
print("Given list A: ", listA)
print("Given list B: ", listB)
print("Given list C: ", listC)
# using zip
res_list = list(zip(listA, listB, listC))
# printing result
print("Combined list is : ", res_list)

Output

การรันโค้ดข้างต้นให้ผลลัพธ์ดังนี้ -

Given list A: ['Mon', 'Tue', 'Wed']
Given list B: ['2 pm', '11 am', '1 pm']
Given list C: [1, 3, 6]
Combined list is : [('Mon', '2 pm', 1), ('Tue', '11 am', 3), ('Wed', '1 pm', 6)]

ด้วย itertools.chain

ฟังก์ชัน chain จากโมดูล itertools สามารถรวบรวมองค์ประกอบของลิสต์เข้าด้วยกันโดยรักษาลำดับที่พวกมันอยู่

ตัวอย่าง

from itertools import chain
listA = ['Mon', 'Tue', 'Wed']
listB = ['2 pm', '11 am', '1 pm']
listC = [1, 3, 6] # Given lists
print("Given list A: ", listA)
print("Given list B: ", listB)
print("Given list C: ", listC)
# using chain
res_list = list(chain(listA, listB, listC))
# printing result
print("Combined list is : ", res_list)

Output

การรันโค้ดข้างต้นให้ผลลัพธ์ดังนี้ -

Given list A: ['Mon', 'Tue', 'Wed']
Given list B: ['2 pm', '11 am', '1 pm']
Given list C: [1, 3, 6]
Combined list is : ['Mon', 'Tue', 'Wed', '2 pm', '11 am', '1 pm', 1, 3, 6]