Danh sách xen kẽ python có độ dài khác nhau

Pandas là một công cụ đặc biệt cho phép chúng tôi thực hiện các thao tác dữ liệu phức tạp một cách hiệu quả và hiệu quả. Bên trong gấu trúc, chúng tôi chủ yếu xử lý tập dữ liệu ở dạng DataFrame. DataFrames là cấu trúc dữ liệu 2 chiều trong gấu trúc. DataFrames bao gồm các hàng, cột và dữ liệu

Hợp nhất hai khung dữ liệu gấu trúc python có độ dài khác nhau nhưng giữ tất cả các hàng trong khung dữ liệu đầu ra

Giả sử chúng ta được cung cấp hai DataFrames gấu trúc có độ dài khác nhau chứa một số hàng và cột có một số giá trị chung và một số giá trị khác nhau, chúng ta cần hợp nhất hai DataFrames này để hai cột tương ứng từ hai DataFrames này có cùng giá trị để các hàng của

Với mục đích này, chúng ta sẽ sử dụng phương thức hợp nhất sẽ là một phép nối trái. Theo mặc định, hợp nhất thực hiện thao tác nối bên trong. Chúng tôi sẽ thay đổi thời trang này bằng cách thao túng các đối số

Hợp nhất gấu trúc là một phương pháp kết hợp hoặc nối hai DataFrames nhưng điểm mấu chốt là phương pháp hợp nhất cho phép chúng tôi kết hợp các DataFrames trên cơ sở các cột cụ thể thay vì các giá trị chỉ mục

Trong hướng dẫn này, bạn sẽ học cách sử dụng Python để kết hợp danh sách, bao gồm cách kết hợp danh sách theo nhiều cách khác nhau. Ví dụ: bạn sẽ tìm hiểu cách nối hai danh sách, kết hợp các danh sách theo trình tự, kết hợp các danh sách mà không trùng lặp, v.v.

Có thể làm việc với danh sách Python là một kỹ năng cực kỳ quan trọng. Danh sách Python là các đối tượng có thể thay đổi nghĩa là chúng có thể được thay đổi. Chúng cũng có thể chứa các giá trị trùng lặp và được sắp xếp theo các cách khác nhau. Bởi vì danh sách Python là các đối tượng thường xuyên như vậy, nên khả năng thao tác với chúng theo nhiều cách khác nhau là một kỹ năng hữu ích để thăng tiến trong sự nghiệp Python của bạn

Câu trả lời nhanh. Sử dụng toán tử +

Danh sách xen kẽ python có độ dài khác nhau
Danh sách xen kẽ python có độ dài khác nhau

Mục lục

  • Kết hợp danh sách Python
  • Kết hợp các danh sách Python xen kẽ bằng Zip
  • Kết hợp danh sách Python mà không trùng lặp
  • Mảng nối Python
  • Kết hợp danh sách Python với vòng lặp For
  • Kết hợp Danh sách Python với Hiểu Danh sách
  • Kết hợp danh sách Python với các phần tử phổ biến
  • Chỉ kết hợp danh sách Python với các phần tử duy nhất
  • Sự kết luận

Kết hợp danh sách Python

Cách dễ nhất để kết hợp các danh sách Python là sử dụng giải nén danh sách hoặc toán tử

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
7 đơn giản

Trước tiên, hãy xem cách sử dụng toán tử

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
7, vì nó đơn giản và dễ hiểu hơn nhiều về mặt cú pháp. Hãy xem cách chúng ta có thể kết hợp hai danh sách

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = list1 + list2

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']

Chúng ta có thể thấy ở đây rằng khi chúng ta in ra danh sách thứ ba, nó kết hợp danh sách thứ nhất và thứ hai

Tương tự, chúng ta có thể tạo danh sách mới bằng cách giải nén tất cả các mục khỏi danh sách mà chúng ta muốn kết hợp. Bằng cách sử dụng toán tử

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
1, chúng ta có thể truy cập tất cả các mục trong cả hai danh sách và giải nén chúng thành danh sách thứ ba

Hãy xem nó trông như thế nào

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']

Trong phần tiếp theo, bạn sẽ tìm hiểu cách kết hợp hai danh sách trong Python theo kiểu xen kẽ, sử dụng hàm

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
2 của Python

Bạn muốn tìm hiểu thêm về chuỗi f Python?

Kết hợp các danh sách Python xen kẽ bằng Zip

Khi bạn kết hợp các danh sách Python, bạn có thể muốn thêm các mục theo phương thức xen kẽ. Ví dụ: bạn có thể muốn thêm mục đầu tiên từ cả hai danh sách, sau đó là mục thứ hai, v.v.

Để làm được điều này, chúng ta có thể sử dụng hàm

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
2 của Python. Hàm zip lặp lại nhiều mục một cách tuần tự, cho phép chúng tôi truy cập các mục theo thứ tự

Hãy xem cách chúng ta có thể sử dụng hàm

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
2 để kết hợp các danh sách Python theo kiểu xen kẽ

# Merge Two Lists in Alternating Fashion
list1 = ['1a', '2a', '3a']
list2 = ['1b', '2b', '3b']

list3 = [item for sublist in zip(list1, list2) for item in sublist]

print(list3)

# Returns: ['1a', '1b', '2a', '2b', '3a', '3b']

Hàm

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
2 tạo đối tượng zip, về mặt kỹ thuật là đối tượng trình tạo. Khi chúng tôi biến danh sách này trở lại thành danh sách, chúng tôi sẽ truy cập tất cả các mục trong trình tạo. Do đó, chúng ta có thể sử dụng hàm để kết hợp hai danh sách Python theo thứ tự tuần tự

Sau đó, chúng tôi sử dụng khả năng hiểu danh sách để làm phẳng đối tượng zip. Để tìm hiểu thêm về cách thức hoạt động của tính năng này, hãy xem hướng dẫn của tôi về làm phẳng danh sách các danh sách

Trong phần tiếp theo, bạn sẽ học cách kết hợp hai danh sách Python mà không trùng lặp

Bạn muốn tìm hiểu cách sử dụng hàm Python

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
2 để lặp qua hai danh sách?

Kết hợp danh sách Python mà không trùng lặp

Danh sách Python cho phép chúng tôi có các giá trị trùng lặp trong đó – đó là một trong những thuộc tính khiến chúng trở nên đặc biệt

Một cấu trúc dữ liệu Python khác, một bộ, tương tự như một danh sách theo một số cách, nhưng không thể có các mục trùng lặp. Chúng tôi có thể sử dụng tập hợp để loại bỏ bất kỳ bản sao nào khỏi danh sách, bằng cách chuyển đổi danh sách thành tập hợp. Để tìm hiểu thêm về cách loại bỏ các bản sao khỏi danh sách Python, hãy xem hướng dẫn của tôi tại đây

Hãy xem cách chúng ta có thể kết hợp các danh sách của mình và loại bỏ tất cả các danh sách trùng lặp bằng cách sử dụng một bộ

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
0

Hãy khám phá những gì chúng tôi đã làm ở đây

  1. Chúng tôi đã kết hợp các danh sách của mình bằng cách sử dụng toán tử
    # Merge Two Lists
    list1 = ['datagy', 'is', 'a', 'site']
    list2 = ['to', 'learn', 'python']
    
    list3 = [*list1, *list2]
    
    print(list3)
    
    # Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
    7,
  2. Sau đó, chúng tôi đã chuyển đổi danh sách đó thành một bộ để loại bỏ các mục trùng lặp
  3. Sau đó, chúng tôi đã chuyển đổi tập hợp trở lại thành một danh sách

Trong phần tiếp theo, bạn sẽ tìm hiểu cách nối các mảng bằng Python

Cần tự động đổi tên tập tin? . Hơn cả một người học trực quan, toàn bộ hướng dẫn cũng có sẵn dưới dạng video trong bài đăng

Mảng nối Python

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
9, thư viện khoa học dữ liệu phổ biến của Python, có cấu trúc dữ liệu dạng danh sách được gọi là numpy
# Merge Two Lists in Alternating Fashion
list1 = ['1a', '2a', '3a']
list2 = ['1b', '2b', '3b']

list3 = [item for sublist in zip(list1, list2) for item in sublist]

print(list3)

# Returns: ['1a', '1b', '2a', '2b', '3a', '3b']
0. Các mảng này có một số phương thức khác nhau để làm việc với chúng dễ dàng hơn

Một trong những phương pháp này là phương pháp

# Merge Two Lists in Alternating Fashion
list1 = ['1a', '2a', '3a']
list2 = ['1b', '2b', '3b']

list3 = [item for sublist in zip(list1, list2) for item in sublist]

print(list3)

# Returns: ['1a', '1b', '2a', '2b', '3a', '3b']
1, nối hai danh sách

Hãy xem cách chúng ta có thể sử dụng Python và

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
9 để làm điều này

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
5

Hãy khám phá những gì chúng tôi đã làm ở đây

  1. Chúng tôi đã chuyển đổi danh sách của mình thành các mảng có nhiều mảng
  2. Sau đó, chúng tôi đã áp dụng phương thức nối cho mảng đầu tiên và chuyển sang mảng thứ hai

Trong phần tiếp theo, bạn sẽ học cách kết hợp các danh sách Python bằng vòng lặp for

Bạn muốn tìm hiểu cách in đẹp tệp JSON bằng Python?

Kết hợp danh sách Python với vòng lặp For

Trong phần này, bạn sẽ học cách sử dụng vòng lặp for để nối các mục từ danh sách này sang danh sách khác. Mặc dù đây không phải là cách tiếp cận thực sự cần thiết trong hầu hết các trường hợp, nhưng nó giúp bạn linh hoạt trong việc đưa vào những mục nào

Ví dụ: sử dụng vòng lặp for, bạn có thể bỏ qua một số mục

Hãy xem xét hai ví dụ. (1) nơi bạn kết hợp tất cả các mục và (2) nơi bạn kết hợp có điều kiện

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
6

Hãy khám phá những gì chúng tôi đã làm ở đây trong cả hai ví dụ

  1. Chúng tôi đã lặp lại danh sách thứ hai của mình và thêm từng mục vào danh sách đầu tiên của chúng tôi
  2. Trong ví dụ có điều kiện, chúng tôi đã kiểm tra một điều kiện. Nếu điều kiện được đáp ứng, thì chúng tôi sẽ thêm mục vào danh sách. Nếu không, thì mục đó bị bỏ qua

Trong phần tiếp theo, bạn sẽ tìm hiểu cách sử dụng khả năng hiểu danh sách Python để kết hợp các danh sách trong Python

Bạn muốn tìm hiểu thêm về vòng lặp for Python? . Thay vào đó, bạn muốn xem một video?

Kết hợp Danh sách Python với Hiểu Danh sách

Chúng ta cũng có thể sử dụng cách hiểu danh sách Python để kết hợp hai danh sách trong Python. Cách tiếp cận này sử dụng cách hiểu danh sách hơi khác thường. chúng tôi thực sự chỉ sử dụng khả năng hiểu danh sách để lặp qua danh sách và nối thêm vào danh sách khác

Hãy xem nó trông như thế nào

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
7

Lý do khiến cách tiếp cận này hơi kỳ lạ là do khả năng hiểu tự nó trôi nổi, hoạt động giống như một tuyên bố hơn là sự gán truyền thống của một danh sách mới. Về mặt cú pháp, cách tiếp cận này lạ và không phục vụ nhiều mục đích khác với vòng lặp for

Trong phần tiếp theo, bạn sẽ tìm hiểu cách kết hợp các danh sách Python chỉ với các phần tử phổ biến

Bạn muốn tìm hiểu thêm về cách hiểu danh sách Python? . Thêm một người học trực quan, hãy xem hướng dẫn YouTube của tôi tại đây

Kết hợp danh sách Python với các phần tử phổ biến

Có thể có lúc bạn chỉ muốn kết hợp các phần tử chung giữa hai danh sách Python, nghĩa là giao điểm giữa hai danh sách. Tôi có một hướng dẫn chuyên sâu về chủ đề này tại đây, hướng dẫn chi tiết về cách thức hoạt động của phương pháp này

Cách tiếp cận được hiển thị bên dưới sử dụng

# Merge Two Lists in Alternating Fashion
list1 = ['1a', '2a', '3a']
list2 = ['1b', '2b', '3b']

list3 = [item for sublist in zip(list1, list2) for item in sublist]

print(list3)

# Returns: ['1a', '1b', '2a', '2b', '3a', '3b']
3 để tạo các phần tử duy nhất trên các danh sách. Hướng dẫn được liên kết ở trên cho thấy nhiều cách tiếp cận khác nhau để có thể thực hiện điều này

Hãy cùng xem cách kết hợp các danh sách chỉ với các phần tử phổ biến

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
9

Hãy khám phá những gì chúng tôi đã làm ở đây

  1. Cả hai danh sách được chuyển đổi thành bộ
  2. Bộ đầu tiên sử dụng phương thức
    # Merge Two Lists in Alternating Fashion
    list1 = ['1a', '2a', '3a']
    list2 = ['1b', '2b', '3b']
    
    list3 = [item for sublist in zip(list1, list2) for item in sublist]
    
    print(list3)
    
    # Returns: ['1a', '1b', '2a', '2b', '3a', '3b']
    4 và chuyển bộ thứ hai vào đối số của nó
  3. Tập hợp cuối cùng được trả về dưới dạng danh sách

Trong phần tiếp theo, bạn sẽ tìm hiểu cách kết hợp hai danh sách chỉ sử dụng các phần tử duy nhất trên hai danh sách

Xem một số hướng dẫn Python khác về datagy, bao gồm hướng dẫn đầy đủ của chúng tôi về cách tạo kiểu cho Pandas và tổng quan toàn diện của chúng tôi về Pivot Tables trong Pandas

Chỉ kết hợp danh sách Python với các phần tử duy nhất

Tương tự như ví dụ trên, bạn có thể muốn kết hợp hai danh sách và chỉ giữ lại các phần tử duy nhất trên hai danh sách

Đối với cách tiếp cận này, chúng tôi sẽ lại sử dụng các tập hợp, tương tự như cách tiếp cận ở trên, trước tiên hãy kiểm tra giao điểm giữa hai danh sách

Hãy xem cách chúng ta có thể làm điều này trong Python và sau đó đi sâu vào cách thức hoạt động của nó

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
1

Hãy khám phá những gì chúng tôi đã làm ở đây

  1. Chúng tôi đã tìm thấy giao điểm giữa hai danh sách và tạo một danh sách có tên là
    # Merge Two Lists in Alternating Fashion
    list1 = ['1a', '2a', '3a']
    list2 = ['1b', '2b', '3b']
    
    list3 = [item for sublist in zip(list1, list2) for item in sublist]
    
    print(list3)
    
    # Returns: ['1a', '1b', '2a', '2b', '3a', '3b']
    5
  2. Sau đó, chúng tôi kết hợp hai danh sách của mình thành một danh sách có tên là
    # Merge Two Lists in Alternating Fashion
    list1 = ['1a', '2a', '3a']
    list2 = ['1b', '2b', '3b']
    
    list3 = [item for sublist in zip(list1, list2) for item in sublist]
    
    print(list3)
    
    # Returns: ['1a', '1b', '2a', '2b', '3a', '3b']
    6
  3. Sau đó, chúng tôi lặp lại danh sách các yếu tố phổ biến
  4. Đối với mỗi mục, chúng tôi đã thực hiện hiểu danh sách lặp qua phần tử chung, loại trừ phần tử đó khỏi danh sách kết hợp

Lý do chúng tôi sử dụng tính năng hiểu danh sách là vì nó cho phép chúng tôi kiểm tra các bản sao. Nếu chúng tôi chỉ đơn giản sử dụng một phương pháp, chẳng hạn như

# Merge Two Lists in Alternating Fashion
list1 = ['1a', '2a', '3a']
list2 = ['1b', '2b', '3b']

list3 = [item for sublist in zip(list1, list2) for item in sublist]

print(list3)

# Returns: ['1a', '1b', '2a', '2b', '3a', '3b']
7, thì chỉ phiên bản đầu tiên sẽ bị xóa

Bạn muốn tìm hiểu cách sử dụng hàm Python

# Merge Two Lists
list1 = ['datagy', 'is', 'a', 'site']
list2 = ['to', 'learn', 'python']

list3 = [*list1, *list2]

print(list3)

# Returns: ['datagy', 'is', 'a', 'site', 'to', 'learn', 'python']
2 để lặp qua hai danh sách?

Sự kết luận

Trong bài đăng này, bạn đã học cách sử dụng Python để kết hợp hai danh sách. Bạn đã học cách làm điều này bằng cách kết hợp hai danh sách theo thứ tự. Bạn cũng đã học cách kết hợp các danh sách theo trình tự xen kẽ và không trùng lặp. Bạn cũng đã học cách sử dụng các vòng lặp for và khả năng hiểu danh sách để kết hợp các danh sách Python. Cuối cùng, bạn đã học cách kết hợp danh sách chỉ với các phần tử phổ biến và chỉ với các phần tử duy nhất