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 : xóa các bản sao trong 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 < / strong>. 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ủ đề xóa các bản sao trong python danh sách

08 Làm việc với List trong Python

alt

  • Tác giả: ĐT Nguyễn [Học Excel Online]
  • Ngày đăng: 2020-05-09
  • Đánh giá: 4 ⭐ ( 8723 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: 08 Làm việc với List / danh sách trong Python
    Code: https://gist.github.com/ndthanh/019f8223bc141609f2fb35aab80a9f85
    XEM THÊM
    Tự học lập trình Python cơ bản:
    https://www.youtube.com/watch?v=GeG_bLPaJ4Q&list=PLALCv46JuKELn2atH340cDsxtNh9vT09c

    Tự học Google Sheet / Google Trang tính
    https://www.youtube.com/watch?v=f6eJTgdeDVw&list=PLALCv46JuKELbzwGKA5xI38aog2wlTtj9

    Tự học JavaScript cơ bản:
    https://www.youtube.com/watch?v=rifl2SmhMYw&list=PLALCv46JuKEJ_fkWzE9C4xI9Q4Pxsdqqh

    Tự học Excel Online cơ bản đến nâng cao:
    https://www.youtube.com/watch?v=skE_Ld3d1FI&list=PLALCv46JuKEIb30S1S2jPgHLQnUvPpmsz

    Tự học lập trình VBA cơ bản đến nâng cao:
    https://www.youtube.com/watch?v=iPBKrsRrFTQ&list=PLALCv46JuKELXd5Ie81UqaFqAfsoXQSQt

    Tự học lập trình Google Apps Script:
    https://www.youtube.com/watch?v=gGgosi7ITR4&list=PLALCv46JuKEL2CmEzyr9_5bzYYGX2p8a6

    ▷ Khoá học Excel: http://bit.ly/ex101_dtnguyen
    ▷ Khoá học VBA: http://bit.ly/vba101_dtnguyen
    ▷ Theo dõi Facebook cá nhân: https://fb.me/kuldokk
    ▷ Blog cá nhân: https://blog.hocexcel.online

Kiểu dữ liệu Danh sách – List trong Python

  • Tác giả: www.codehub.com.vn
  • Đánh giá: 5 ⭐ ( 4006 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Có 4 loại cấu trúc dữ liệu trong ngôn ngữ lập trình Python:

    – **List** là dãy mà có khả năng lưu giữ các kiểu dữ liệu khác nhau và có thể thay đổi. Cho phép thành viên trùng lặp.
    – **Tup…

Xóa bản sao khỏi danh sách được liên kết không được sắp xếp (python)

  • Tác giả: isolution.pro
  • Đánh giá: 3 ⭐ ( 4196 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Xóa các bản sao khỏi danh sách các danh sách trong Python

  • Tác giả: vi.uwenku.com
  • Đánh giá: 3 ⭐ ( 2163 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Có thể ai đề xuất một giải pháp tốt để xóa các bản sao khỏi danh sách lồng nhau nếu muốn đánh giá các bản sao dựa trên phần tử đầu tiên của mỗi danh sách lồng nhau không? Danh sách chính trông như thế

Kiến thức cơ bản cho người mới bắt đầu

  • Tác giả: moitruongso.com
  • Đánh giá: 3 ⭐ ( 8057 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Ngôn ngữ lập trình Python đang trở thành ngôn ngữ phổ biến nhất hiện nay. Là ngôn ngữ lập trình bậc cao có thể xây dựng được nhiều ứng dụng.

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

  • Tác giả: pluginthanhtoan.com
  • Đánh giá: 3 ⭐ ( 2890 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.

Xóa phần tử trong list python (del, pop, remove, clear)

  • Tác giả: laptrinhcanban.com
  • Đánh giá: 3 ⭐ ( 7672 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hướng dẫn tất cả các cách xóa phần tử trong list python. Bạn sẽ học được tất cả cách xóa phần tử trong list python như xóa phần tử trong list theo index, xóa phần tử giống với giá trị chỉ định, xóa ph

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  Hộp kiểm JavaScript - hộp kiểm với javascript

By ads_php