Nối danh sách Python

Nếu bạn muốn các mục duy nhất từ ​​danh sách nối, bạn có thể sử dụng

[1, 'a', 3, 4, 5]
0 và
[1, 'a', 3, 4, 5]
1.
[1, 'a', 3, 4, 5]
1 chọn các giá trị duy nhất và
[1, 'a', 3, 4, 5]
0 chuyển đổi tập hợp thành danh sách

Trong hướng dẫn này, chúng ta tìm hiểu cách sử dụng Python để nối các danh sách. Điều này có thể đạt được thông qua nhiều cách sử dụng toán tử, hàm và các phương thức khác

Mục lục - Nối danh sách trong Python

  • Nối các danh sách là gì?
  • Sử dụng toán tử '*' trong Python để nối danh sách
  • Sử dụng toán tử '+' trong Python để nối các danh sách
  • Nối danh sách bằng phương thức append()
  • Nối các danh sách bằng phương thức mở rộng ()
  • Bớt tư tưởng

Nối các danh sách là gì?

Trước khi tìm hiểu cách nối danh sách là gì, trước tiên chúng ta hãy xem danh sách trong Python là gì

Danh sách là một trong những cấu trúc dữ liệu phổ biến nhất được sử dụng, không chỉ trong Python mà còn trong lập trình nói chung. Nó là một thùng chứa Python có thứ tự và có thể thay đổi. Để tạo danh sách, các phần tử được đặt bên trong dấu ngoặc vuông ([]) và mỗi phần tử được phân tách bằng dấu phẩy

Ngoài cách đó, chúng ta hãy xem các phương thức khác nhau có thể được sử dụng để kiểm tra xem một danh sách có trống trong Python không


        # list of integers 
        number_list = [1, 2, 3, 4, 5]
        
        # example of a list containing different data types
        random_list = [1, “apple”, 4, ball”, 7, 9, True]        
        
Nối hai hoặc nhiều danh sách lại với nhau trong Python được gọi là Nối.

Bây giờ chúng ta hãy xem xét một số phương pháp nối danh sách trong Python.

Nối các danh sách bằng toán tử '*' trong Python

Toán tử dấu hoa thị '*' hữu ích cho nhiều mục đích trong lập trình. Nhưng một cách sử dụng tốt cho nó là sử dụng nó như một toán tử giải nén. Khi được sử dụng làm toán tử giải nén, nó “giải nén” nội dung của cấu trúc dữ liệu vùng chứa - chẳng hạn như danh sách, thành một danh sách khác

Như mọi người có thể thấy trong đoạn mã bên dưới, việc sử dụng toán tử dấu hoa thị làm cho mã ngắn gọn, súc tích và dễ đọc

Dưới đây là một ví dụ về cách một người có thể sử dụng toán tử '*' để nối hai danh sách,

[11, 12, 13, 14, 15, 16]
7 và
[11, 12, 13, 14, 15, 16]
8

Đầu vào

# How to concatenate lists using the ‘*’ operator in Python
        list_one = [11, 12, 13]
        list_two = [14, 15, 16]
        list_three = [*list_one *list_two]
        print(list_three)
 

Đầu ra

[11, 12, 13, 14, 15, 16]

Một người cũng có thể nối nhiều hơn hai danh sách một cách dễ dàng

[11, 12, 13, 14, 15, 16]
9

Xét về hiệu suất, phương thức

[1, 'a', 3, 4, 5]
00 nhanh hơn nhiều lần so với toán tử dấu hoa thị. Vì vậy, phép nối sử dụng toán tử dấu hoa thị '*' có thể không phải là phương pháp hiệu quả nhất khi nối các danh sách lớn

Nối các danh sách bằng toán tử '+'

Một cách dễ dàng khác để tham gia danh sách trong Python là sử dụng toán tử '+'. Toán tử '+' là một phương thức dễ sử dụng để nối hai hoặc nhiều danh sách lại với nhau trong Python. Logic và ứng dụng của nó rất đơn giản và dễ hiểu

Khi chúng ta sử dụng toán tử '+' trên hai số nguyên, chúng ta sẽ nhận được tổng của các số nguyên đó. Nhưng khi sử dụng trên các danh sách, chúng ta sẽ có một danh sách mới là sự nối tiếp của các danh sách đó

Đầu vào

[1, 'a', 3, 4, 5]
0

Đầu ra.

[11, 12, 13, 14, 15, 16]

Trong ví dụ trên, bằng cách sử dụng toán tử '+', Python đã thêm

[11, 12, 13, 14, 15, 16]
8 vào cuối
[11, 12, 13, 14, 15, 16]
7 và điều đó đã dẫn đến một danh sách mới làm đầu ra

Tuy nhiên, toán tử '+' tạo một danh sách mới cho mỗi thao tác nối danh sách. Đây có thể là một cách rất kém hiệu quả khi sử dụng toán tử '+' nhiều lần trong một vòng lặp

Nối danh sách bằng hàm append()

Như tên gợi ý, phương thức

[1, 'a', 3, 4, 5]
03 nối thêm phần tử x vào cuối của
[1, 'a', 3, 4, 5]
04. Phương thức hàm
[1, 'a', 3, 4, 5]
05 hoạt động nhanh hơn nhiều lần so với toán tử '+'. Nó cũng có thể đọc được và dễ sử dụng

Dưới đây là một ví dụ về cách chúng ta có thể sử dụng phương pháp

[1, 'a', 3, 4, 5]
05 để nối hai danh sách,
[11, 12, 13, 14, 15, 16]
7 và
[11, 12, 13, 14, 15, 16]
8 và lưu trữ kết quả trong
[11, 12, 13, 14, 15, 16]
7

Đầu vào

[1, 'a', 3, 4, 5]
2

Đầu ra.

[1, 'a', 3, 4, 5]
3

Một vấn đề lớn với phương pháp

[1, 'a', 3, 4, 5]
05 là nếu chúng ta muốn nối hai danh sách, chúng ta phải lặp lại tất cả các phần tử của danh sách và nối chúng từng cái một. Điều này có thể chuyển thành một quy trình mở rộng tùy thuộc vào kích thước của danh sách bạn đang xử lý

Nối các danh sách bằng hàm mở rộng ()

Đây là một chức năng khác mà người ta có thể sử dụng để nối các danh sách lại với nhau. Sự khác biệt giữa hàm

[1, 'a', 3, 4, 5]
05 và
[1, 'a', 3, 4, 5]
00 là hàm trước chỉ thêm một phần tử tại một thời điểm và hàm sau thêm một tập hợp các phần tử vào danh sách

Phương thức

[1, 'a', 3, 4, 5]
00 cũng là cách ngắn gọn nhất và nhanh nhất để nối các danh sách so với tất cả các phương thức khác

Dưới đây là một ví dụ về cách chúng ta có thể sử dụng phương pháp

[1, 'a', 3, 4, 5]
00 để nối hai danh sách, list_one và list_two lại với nhau

Đầu vào

[1, 'a', 3, 4, 5]
9

Đầu ra.

[1, 'a', 3, 4, 5]
0

Phương thức

[11, 12, 13, 14, 15, 16]
5 thêm tất cả các phần tử trong iterable vào cuối danh sách

Phương thức

[1, 'a', 3, 4, 5]
00 thêm tất cả các phần tử trong iterable vào cuối danh sách ít phức tạp hơn đáng kể so với phương thức
[1, 'a', 3, 4, 5]
05 lặp qua từng phần tử và nối từng phần tử một