Tìm hiểu cách sử dụng Python để xóa các bản sao khỏi danh sách, bao gồm cách duy trì thứ tự từ danh sách ban đầu, bằng cách sử dụng bảy phương pháp.

Bạn đang xem : loại bỏ các bản sao từ python danh sách

Trong hướng dẫn này, bạn sẽ học cách sử dụng Python để xóa các bản sao khỏi danh sách . Biết cách làm việc với danh sách Python là một kỹ năng quan trọng đối với bất kỳ Pythonista nào. Khả năng loại bỏ các mục trùng lặp có thể rất hữu ích khi làm việc với dữ liệu mà việc biết tần suất của các mục là không quan trọng.

Bạn sẽ học cách xóa các bản sao khỏi danh sách Python trong khi duy trì thứ tự hoặc khi thứ tự không quan trọng. Bạn sẽ học cách thực hiện việc này bằng các phương pháp đơn giản, danh sách hiểu, bộ, từ điển, thư viện collection , numpy pandas .

Câu trả lời nhanh :

Trả lời nhanh - Xóa bản sao khỏi danh sách Python

Xóa các bản sao khỏi Python Danh sách Sử dụng Vòng lặp Đối với

Cách triển khai đơn giản nhất để xóa các bản sao khỏi danh sách Python là sử dụng phương thức vòng lặp for. Sử dụng phương pháp này liên quan đến việc lặp lại từng mục trong danh sách và xem liệu nó đã tồn tại trong danh sách khác chưa.

Hãy xem điều này trông như thế nào trong Python:

 # Xóa các bản sao khỏi danh sách Python bằng vòng lặp For

Dupated_list = [1,1,2,1,3,4,1,2,3,4]
decuplicated_list = list ()

cho mục trong danh sách trùng lặp:
    nếu mục không có trong danh sách trùng lặp:
        decuplicated_list.append (item)

in (danh_sách_có_đã_được_đã_hóa) 

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

  1. Chúng tôi đã tạo một danh sách mới, trống để chứa các mục đã loại bỏ trùng lặp
  2. Chúng tôi lặp lại từng mục trong danh sách trùng lặp của mình và kiểm tra xem nó có tồn tại trong danh sách bị trùng lặp không
  3. Nếu không, chúng tôi đã thêm mục vào danh sách của mình. Nếu nó tồn tại, thì chúng tôi không làm gì cả

Trong phần tiếp theo, bạn sẽ học cách loại bỏ trùng lặp một danh sách bằng Python bằng cách sử dụng khả năng hiểu danh sách.

​​ Bạn muốn tìm hiểu thêm về vòng lặp for trong Python? Hãy xem hướng dẫn chuyên sâu của tôi đưa bạn từ người mới bắt đầu đến người dùng for-vòng nâng cao! Bạn muốn xem video thay thế? Xem hướng dẫn trên YouTube của tôi tại đây .

Xóa các trùng lặp từ danh sách Python bằng cách sử dụng tính năng hiểu danh sách

Tương tự như phương pháp sử dụng vòng lặp for, bạn cũng có thể sử dụng khả năng hiểu danh sách Python để loại bỏ trùng lặp danh sách. Quá trình liên quan ở đây hơi khác một chút so với quá trình hiểu danh sách thông thường, vì chúng tôi sẽ sử dụng khả năng hiểu nhiều hơn để lặp lại danh sách.

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

 # Xóa bản sao khỏi danh sách Python bằng cách sử dụng tính năng hiểu danh sách

Dupated_list = [1,1,2,1,3,4,1,2,3,4]
decuplicated_list = list ()

[decuplicated_list.append (item) cho mục trong danh sách trùng lặp nếu mục không có trong danh sách trùng lặp]

in (danh_sách_có_đã_được_đã_hóa) 

Cách tiếp cận này hơi khó xử vì khả năng hiểu danh sách chỉ có một mình. Điều này có thể làm cho mã ít trực quan hơn để theo dõi, vì tính năng hiểu danh sách thường được sử dụng để tạo danh sách mới. Tuy nhiên, vì chúng tôi chỉ lặp lại danh sách và nối vào danh sách khác, nên không có danh sách mới nào được khởi tạo bằng cách sử dụng hiểu.

Trong phần tiếp theo, bạn sẽ học cách sử dụng từ điển Python để loại bỏ trùng lặp danh sách Python.

​​ Bạn muốn tìm hiểu thêm về cách hiểu danh sách Python? Hãy xem hướng dẫn chuyên sâu này bao gồm tất cả mọi thứ bạn cần biết, với các ví dụ thực tế. Nhiều người học bằng hình ảnh hơn, hãy xem hướng dẫn trên YouTube của tôi tại đây .

Sử dụng Từ điển Python để Xóa Các bản sao từ Danh sách

Kể từ Python 3.7, từ điển Python duy trì thứ tự ban đầu của các mục được chuyển vào chúng. Mặc dù phương pháp này sẽ hoạt động đối với các phiên bản trước Python 3.7, nhưng danh sách bị trùng lặp kết quả sẽ không duy trì thứ tự của danh sách ban đầu.

Lý do mà việc chuyển đổi một danh sách thành một từ điển hoạt động là các khóa từ điển phải là duy nhất. Một điều quan trọng cần lưu ý là từ điển Python yêu cầu các khóa của chúng phải có thể băm, nghĩa là chúng phải bất biến. nếu danh sách của bạn chứa các phần tử có thể thay đổi, thì phương pháp này sẽ không hoạt động.

Hãy xem cách chúng tôi có thể sử dụng từ điển Python để loại bỏ trùng lặp danh sách:

 # Xóa các bản sao khỏi danh sách Python bằng từ điển

Dupated_list = [1,1,2,1,3,4,1,2,3,4]

từ điển = dict.fromkeys (danh sách trùng lặp)
decuplicated_list = danh sách (từ điển)

in (danh sách đã xóa)

# Trả về: [1, 2, 3, 4] 

Hãy xem những gì chúng tôi đã làm ở đây:

  1. Chúng tôi đã tạo một từ điển bằng phương thức .fromkeys () , sử dụng các mục được chuyển vào nó để tạo từ điển với các khóa từ đối tượng
  2. Chúng tôi sau đó biến từ điển thành một danh sách bằng cách sử dụng hàm list () để tạo danh sách từ các khóa trong từ điển.

Trong phần tiếp theo, bạn sẽ học cách sử dụng các bộ Python để loại bỏ trùng lặp danh sách.

​​ Bạn cần kiểm tra xem khóa có tồn tại trong từ điển Python không? Kiểm tra xem hướng dẫn này , hướng dẫn bạn năm cách khác nhau để xem liệu khóa có tồn tại trong từ điển Python hay không, bao gồm cả cách trả về giá trị mặc định.

Sử dụng Bộ Python để Xóa Các bản sao từ Danh sách

Tập hợp là cấu trúc dữ liệu Python duy nhất được tạo bằng dấu ngoặc nhọn {} . Chúng chỉ chứa các mục duy nhất và không có thứ tự và không được lập chỉ mục.

Bởi vì các tập hợp Python là duy nhất, khi chúng tôi tạo một tập hợp dựa trên một đối tượng khác, chẳng hạn như danh sách, thì các mục trùng lặp sẽ bị xóa.

Những gì chúng tôi có thể làm trước tiên là chuyển đổi danh sách của mình thành một tập hợp, sau đó quay lại danh sách.

Hãy xem điều này trông như thế nào trong Python:

 # Xóa các bản sao khỏi danh sách Python bằng cách sử dụng set ()

Dupated_list = [1,1,2,1,3,4,1,2,3,4]
decuplicated_list = danh sách (set (danh sách trùng lặp))

in (danh sách đã xóa)

# Trả về: [1, 2, 3, 4] 

Những gì chúng tôi đã làm ở đây là:

  1. Chúng tôi đã chuyển danh sách ban đầu của mình vào hàm set () , hàm này đã tạo một tập hợp và xóa tất cả các mục trùng lặp,
  2. Sau đó, chúng tôi đã chuyển tập hợp đó vào < code> list () , để tạo một danh sách khác

Trong phần tiếp theo, bạn sẽ tìm hiểu cách sử dụng thư viện collection để xóa các bản sao khỏi danh sách Python.

​​ Bạn muốn tìm hiểu cách sử dụng hàm Python zip () để lặp qua hai danh sách? Hướng dẫn này cho bạn chính xác chức năng của hàm zip () và chỉ cho bạn một số cách sáng tạo để sử dụng hàm.

Xóa các Bản sao khỏi Danh sách Python Sử dụng Bộ sưu tập

Nếu bạn đang làm việc với phiên bản Python cũ hơn không hỗ trợ các từ điển có thứ tự (trước Python 3.6), bạn cũng có thể sử dụng thư viện collection để thực hiện một cách tiếp cận tương tự.

Chúng tôi sử dụng thư viện collection để tạo một từ điển có thứ tự và sau đó chuyển đổi nó trở lại một danh sách.

Hãy xem cách này hoạt động như thế nào:

 # Xóa các bản sao khỏi danh sách Python bằng cách sử dụng một bộ sưu tập
từ bộ sưu tập nhập OrderedDict

Dupated_list = [1,1,2,1,3,4,1,2,3,4]
debuplicated_list = list (OrderedDict.fromkeys (Duplicated_list))

in (danh sách đã xóa)

# Trả về: [1, 2, 3, 4] 

Trong phần tiếp theo, bạn sẽ học cách sử dụng numpy để xóa các bản sao khỏi danh sách.

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

Sử dụng Numpy để Xóa các Bản sao từ Danh sách Python

Thư viện Python phổ biến numpy có một đối tượng giống như danh sách được gọi là các mảng . Điều tuyệt vời về các mảng này là chúng có một số phương pháp hữu ích được tích hợp sẵn.

Một trong những hàm này là hàm unique () , hàm này tìm các mục duy nhất trong một mảng.

Hãy xem cách chúng tôi có thể sử dụng numpy để xóa các bản sao khỏi danh sách Python.

 # Xóa các bản trùng lặp khỏi danh sách Python bằng cách sử dụng một mảng numpy
nhập numpy dưới dạng np

Dupated_list = [1,1,2,1,3,4,1,2,3,4]
decuplicated_list = np.unique (np.array (danh sách trùng lặp)). tolist ()

in (danh sách đã xóa)

# Trả về: [1, 2, 3, 4] 

Tại đây, trước tiên, chúng ta tạo một mảng từ danh sách của mình, chuyển nó vào hàm unique () . Cuối cùng, chúng tôi sử dụng phương thức .tolist () để tạo danh sách ngoài mảng.

Trong phần cuối cùng, bạn sẽ học cách sử dụng Pandas để loại bỏ trùng lặp danh sách Python.

​​ Bạn muốn tìm hiểu thêm về cách tính căn bậc hai trong Python? Hãy xem hướng dẫn của tôi tại đây , sẽ hướng dẫn bạn các cách tính căn bậc hai khác nhau, cả khi không có hàm Python và với sự trợ giúp của hàm.

Sử dụng Pandas để Xóa các Bản sao từ Danh sách Python

Trong phần cuối cùng này, bạn sẽ học cách sử dụng thư viện pandas phổ biến để loại bỏ trùng lặp danh sách Python.

Pandas sử dụng một mảng không có hạt và tạo một đối tượng Pandas series . Các đối tượng này cũng tương tự như danh sách Python, nhưng được mở rộng bởi một số hàm và phương thức có thể áp dụng cho chúng.

Hãy xem cách chúng ta có thể thực hiện việc này bằng Python và Pandas:

 # Xóa bản sao khỏi danh sách Python bằng Pandas
nhập gấu trúc dưới dạng pd

Dupated_list = [1,1,2,1,3,4,1,2,3,4]
decuplicated_list = pd.Series (danh sách trùng lặp) .unique (). tolist ()

in (danh sách đã xóa)

# Trả về: [1, 2, 3, 4] 

Trong phần này, trước tiên chúng tôi tạo một đối tượng pd.Series () , sau đó áp dụng phương thức .unique () và cuối cùng sử dụng .tolist ( ) để trả về một danh sách.

​​ Bạn cần tự động đổi tên tệp? Xem hướng dẫn chuyên sâu này về cách sử dụng pathlib để đổi tên tệp. Không chỉ là 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!

Kết luận

Trong hướng dẫn này, bạn đã học một số cách khác nhau để xóa các bản sao khỏi danh sách Python. Bạn đã học được một số phương pháp đơn giản để thực hiện việc này, bao gồm sử dụng vòng lặp for và hiểu danh sách. Bạn cũng đã học cách sử dụng bộ và từ điển để loại bỏ các bản sao, cũng như sử dụng các thư viện khác, chẳng hạn như collection , numpy pandas để làm cái này.

Để tìm hiểu thêm về thư viện collection , hãy xem tài liệu chính thức tại đây .


Xem thêm những thông tin liên quan đến chủ đề thả các bản sao từ python danh sách

How to Remove Duplicate Elements in List using Python

alt

  • Tác giả: I know python
  • Ngày đăng: 2021-02-08
  • Đánh giá: 4 ⭐ ( 4663 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: In this video i will show you how to remove duplicate elements from a list using while loop in python

    my setup and gadgets
    laptop Dell G3 3500 Gaming 15.6-inch Laptop (10th Gen Core i5-10300H/8GB/1TB + 256GB SSD/Win 10/4GB NVIDIA1650 Ti Graphics), : https://amzn.to/3ku8exN
    microphone Maono AU-A03 Condenser Microphone Kit : https://amzn.to/2UpW6Dq
    keyboard Amkette Evo Fox Fireblade Gaming Wired Keyboard : https://amzn.to/38IRTmq
    mouse Dell Wireless Mouse WM118 : https://amzn.to/3knMxiI

    some terms related to this video
    remove duplicates in list python
    remove duplicates in linked list python
    how to remove duplicate elements in list python
    python list tutorial
    python list operations
    remove duplicate elements from a list in python

    tags: python_list i_know_python

[Python] Phần 8: Danh sách (List) trong Python

  • Tác giả: www.dammio.com
  • Đánh giá: 5 ⭐ ( 1796 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Danh sách các phiên bản Python

  • Tác giả: qastack.vn
  • Đánh giá: 4 ⭐ ( 4635 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] JavaScript (ES6), 128 125 124 byte Đã lưu 1 byte nhờ @ OlivierGrégoire Xuất ra mỗi…

Cách xóa các bản sao khỏi danh sách Python

  • Tác giả: pluginthanhtoan.com
  • Đánh giá: 5 ⭐ ( 1101 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: botvietbai.com cung cấp các hướng dẫn, tài liệu tham khảo và bài tập trực tuyến miễn phí bằng tất cả các ngôn ngữ chính của web. Bao gồm các chủ đề phổ biến như HTML, CSS, JavaScript, Python, SQL, Java, và nhiều hơn nữa.

Bản sao Danh sách Python ()

  • Tác giả: vi.wiki-base.com
  • Đánh giá: 4 ⭐ ( 7845 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Kiểu danh sách (list) trong Python

  • Tác giả: tuhocict.com
  • Đánh giá: 5 ⭐ ( 3437 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong bài học này chúng ta sẽ xem xét chi tiết cách sử dụng dữ liệu kiểu list – kiểu dữ liệu tập hợp đa năng, linh hoạt và phổ biến hàng đầu trong Python.

Python – Danh sách

  • Tác giả: knews.vip
  • Đánh giá: 4 ⭐ ( 7352 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Danh sách là một kiểu dữ liệu linh hoạt nhất có sẵn trong Python, có thể được viết dưới dạng danh sách các giá trị (mục) được phân tách bằng dấu phẩy giữa các dấu ngoặc vuông. Điều quan trọng về danh sách là các mục trong danh sách không cần cùng loại. Tạo danh sách đơn giản như đặt…

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Sử dụng phương pháp xác nhận JavaScript: Giải thích thông báo xác nhận - javascript nếu xác nhận trả về true

By ads_php