Đối với các công việc phân tích dữ liệu khác nhau trong python, chúng tôi có thể cần kết hợp nhiều danh sách python thành một danh sách. Điều này sẽ giúp xử lý nó như một danh sách đầu vào duy nhất cho các phần khác của chương trình cần nó. Nó cung cấp hiệu suất tăng bằng cách giảm số lượng vòng lặp cần thiết để xử lý dữ liệu thêm.
Sử dụng + toán tử
Toán tử + thực hiện công việc liên tục là nối các danh sách lại với nhau. Chúng tôi chỉ áp dụng toán tử giữa tên của danh sách và kết quả cuối cùng được lưu trữ trong danh sách lớn hơn. Trình tự của các phần tử trong danh sách được giữ nguyên.
Ví dụ
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)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
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]
Với zip
Hàm zip tập hợp các phần tử lại với nhau tạo thành từng danh sách từ cùng một chỉ mục và sau đó chuyển sang chỉ mục tiếp theo. Kiểu nối này hữu ích khi bạn muốn bảo toàn các phần tử tạo thành danh sách ở cùng một vị trí chỉ mục với nhau.
Ví dụ
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)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
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)]
Với itertools.chain
Hàm chuỗi từ mô-đun itertools có thể kết hợp các phần tử của danh sách lại với nhau để duy trì trình tự mà chúng hiện diện.
Ví dụ
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)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
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]