Xóa các mục trùng lặp khỏi danh sách Python tại chỗ
Python là một ngôn ngữ lập trình cấp cao, hướng đối tượng với ngữ nghĩa động được diễn giải. Các cấu trúc dữ liệu tích hợp cấp cao của nó, kết hợp với kiểu gõ động và liên kết động, làm cho nó trở nên rất hấp dẫn đối với Phát triển ứng dụng nhanh, cũng như sử dụng làm ngôn ngữ kịch bản hoặc ngôn ngữ keo để kết nối các thành phần hiện có. Show
Cú pháp đơn giản, dễ học của Python ưu tiên khả năng đọc, giảm chi phí bảo trì chương trình. Python cung cấp hỗ trợ cho các mô-đun và gói, giúp thúc đẩy tính mô-đun của chương trình và tái sử dụng mã. Trình thông dịch Python và thư viện tiêu chuẩn mở rộng được sử dụng và phân phối miễn phí ở dạng nguồn hoặc nhị phân cho tất cả các nền tảng chính Trong bài viết này, chúng ta sẽ xem danh sách là gì trong Python. Vì danh sách Python là một tập hợp nhiều phần tử, bao gồm cả các phần tử trùng lặp, nên đôi khi cần phải làm cho danh sách trở thành duy nhất. Trong phần này, chúng ta sẽ xem xét các phương pháp khác nhau để xóa các bản sao khỏi danh sách trong Python. Đầu tiên, hãy cho chúng tôi biết chính xác danh sách là gì? Khóa đào tạo PythonTìm hiểu về thao tác dữ liệu trong Python Khám phá khóa họcDanh sách Python là gì?Danh sách là kiểu dữ liệu quan trọng nhất trong ngôn ngữ lập trình Python. Danh sách này được viết bằng Python dưới dạng danh sách các giá trị được phân tách bằng dấu phẩy được đặt trong dấu ngoặc vuông. Ưu điểm đáng kể nhất của danh sách là các phần tử bên trong nó không nhất thiết phải cùng kiểu dữ liệu và có thể được lập chỉ mục phủ định. Hơn nữa, tất cả các thao tác chuỗi, chẳng hạn như cắt và nối, cũng có thể áp dụng cho kiểu dữ liệu danh sách. Chúng ta cũng có thể tạo danh sách lồng nhau, là danh sách chứa danh sách khác Làm cách nào để xóa các bản sao khỏi danh sách Python?Trong Python, có rất nhiều phương pháp để loại bỏ các bản sao khỏi danh sách. Để xóa các mục trùng lặp khỏi một danh sách nhất định, bạn có thể sử dụng các phương pháp này và hoàn thành công việc của mình. Chúng ta hãy nhìn vào họ. Phương pháp 1 - Phương pháp ngây thơĐể xóa các bản trùng lặp khỏi danh sách trong Python, hãy lặp qua các phần tử của danh sách và lưu trữ lần xuất hiện đầu tiên của một phần tử trong danh sách tạm thời trong khi bỏ qua mọi lần xuất hiện khác của phần tử đó Cách tiếp cận cơ bản được thực hiện theo phương pháp ngây thơ bởi
Thí dụ.# loại bỏ các bản sao khỏi danh sách bằng các phương pháp ngây thơ # khởi tạo danh sách sam_list = [11, 13, 15, 16, 13, 15, 16, 11] print("Danh sach la. " + str(sam_list)) # xóa trùng lặp khỏi danh sách kết quả = [] cho tôi trong sam_list. nếu tôi không có kết quả. kết quả. nối thêm (i) # in danh sách sau khi xóa print("Danh sách sau khi loại bỏ trùng lặp. " + str(kết quả)) đầu ra.danh sách là. [11, 13, 15, 16, 13, 15, 16, 11] Danh sách sau khi loại bỏ trùng lặp. [11, 13, 15, 16] Phương pháp 2 - Sử dụng Danh sách HiểuThay vì sử dụng vòng lặp For để triển khai phương pháp Naive loại bỏ các bản sao khỏi danh sách, chúng ta có thể sử dụng chức năng hiểu Danh sách của Python để thực hiện điều đó chỉ trong một dòng mã Thí dụ# loại bỏ các bản sao khỏi danh sách bằng cách sử dụng khả năng hiểu danh sách # khởi tạo danh sách sam_list = [11, 13, 15, 16, 13, 15, 16, 11] print("Danh sach la. " + str(sam_list)) # để xóa trùng lặp khỏi danh sách kết quả = [] [kết quả. append(x) cho x trong sam_list nếu x không có kết quả] # in danh sách sau khi xóa print("Danh sách sau khi loại bỏ trùng lặp. " + str(kết quả)) đầu radanh sách là. [11, 13, 15, 16, 13, 15, 16, 11] Danh sách sau khi loại bỏ trùng lặp. [11, 13, 15, 16] khóa học miễn phí. Python cho người mới bắt đầuNắm vững kiến thức cơ bản về Python Đăng ký ngayCách 3 - Sử dụng set()Đây là phương pháp được sử dụng phổ biến nhất để xóa một bản sao khỏi danh sách Python. Điều này là do thực tế là các bản sao không được phép trong cấu trúc dữ liệu đã đặt. Tuy nhiên, thứ tự của các phần tử bị mất khi sử dụng phương pháp này Thí dụ.# loại bỏ các mục trùng lặp khỏi danh sách bằng cách sử dụng set() # khởi tạo danh sách sam_list = [11, 15, 13, 16, 13, 15, 16, 11] print("Danh sach la. " + str(sam_list)) # để xóa trùng lặp khỏi danh sách sam_list = danh sách (bộ (sam_list)) # in danh sách sau khi xóa # đặt hàng méo mó print("Danh sách sau khi loại bỏ trùng lặp. " + str(sam_list)) đầu radanh sách là. [11, 15, 13, 16, 13, 15, 16, 11] Danh sách sau khi loại bỏ trùng lặp. [16, 11, 13, 15] Cách 4 - Sử dụng cách hiểu list + enumerate()Chúng tôi tìm các phần tử riêng biệt và lưu trữ chúng trong một danh sách tạm thời bằng phương pháp hiểu Danh sách. Khi chúng ta sử dụng tính năng hiểu Danh sách kết hợp với hàm enumerate(), chương trình sẽ kiểm tra các phần tử đã gặp trước đó và bỏ qua việc thêm chúng vào danh sách tạm thời. Hàm liệt kê lấy một đối số có thể lặp lại làm đối số và trả về nó dưới dạng đối tượng liệt kê (chỉ mục, phần tử), hàm này thêm một bộ đếm cho mỗi phần tử có thể lặp lại Thí dụ# loại bỏ các bản sao khỏi danh sách bằng cách sử dụng hiểu danh sách + liệt kê () # khởi tạo danh sách sam_list = [11, 15, 13, 16, 13, 15, 16, 11] print("Danh sach la. " + str(sam_list)) # để xóa trùng lặp khỏi danh sách kết quả = [i cho n, tôi liệt kê (sam_list) nếu tôi không có trong sam_list [. N]] # in danh sách sau khi xóa print("Danh sách sau khi loại bỏ trùng lặp. " + str(kết quả)) đầu radanh sách là. [11, 13, 15, 16, 13, 15, 16, 11] Danh sách sau khi loại bỏ trùng lặp. [11, 13, 15, 16] Phương pháp 5 - Sử dụng bộ sưu tập. Ra lệnhDict. fromkeys()Đây là cách nhanh nhất để hoàn thành mục tiêu loại bỏ trùng lặp khỏi danh sách Python. Phương pháp này đầu tiên loại bỏ các bản trùng lặp trước khi trả về một từ điển đã được chuyển đổi thành danh sách. Ngoài ra, phương pháp này hoạt động tốt với chuỗi Thí dụ# xóa trùng lặp khỏi danh sách bằng bộ sưu tập. Ra lệnhDict. fromkeys() từ bộ sưu tập nhập OrderedDict # khởi tạo danh sách sam_list = [11, 15, 13, 16, 13, 15, 16, 11] print("Danh sach la. " + str(sam_list)) # để xóa trùng lặp khỏi danh sách kết quả = danh sách (OrderedDict. fromkeys(sam_list)) # in danh sách sau khi xóa print("Danh sách sau khi loại bỏ trùng lặp. " + str(kết quả)) đầu radanh sách là. [11, 15, 13, 16, 13, 15, 16, 11] Danh sách sau khi loại bỏ trùng lặp. [11, 15, 13, 16] Tìm hiểu các hoạt động dữ liệu trong Python, chuỗi, câu lệnh có điều kiện, xử lý lỗi và khung web Python thường được sử dụng Django. Hãy xem khóa đào tạo Python của Simplilearn Phần kết luậnCó thể sử dụng các tập hợp, hàm tích hợp và phương pháp lặp để loại bỏ các mục trùng lặp khỏi danh sách. Nếu các phần tử của danh sách không thể băm được, hãy luôn thực hiện phương pháp lặp lại, duyệt qua danh sách và trích xuất các mục duy nhất. Phương pháp ngây thơ, hiểu danh sách và danh sách. các phương thức count() là những ví dụ về cách tiếp cận lặp đi lặp lại. Nếu thứ tự của các phần tử không quan trọng, chúng ta có thể loại bỏ các phần tử trùng lặp bằng cách sử dụng phương thức Set và hàm Numpy unique(). Chúng ta có thể sử dụng các hàm Pandas, OrderedDict, hàm reduce(), phương thức Set + sort() và các phương pháp lặp để giữ thứ tự của các phần tử Để học và tạo dựng sự nghiệp thành công với tư cách là một lập trình viên Python, hãy đăng ký Khóa học cấp chứng chỉ Python của Simplilearn. Với khóa học này, bạn cũng sẽ nắm vững các thao tác dữ liệu, câu lệnh có điều kiện, tập lệnh shell, Django, v.v. Thông tin về các Tác giảRavikiran ASRavikiran A S làm việc với Simplilearn với tư cách là Nhà phân tích nghiên cứu. Anh ấy là một người đam mê nhiệt tình, luôn săn lùng những công nghệ mới nhất. Anh ấy thành thạo Ngôn ngữ lập trình Java, Dữ liệu lớn và các Khung dữ liệu lớn mạnh mẽ như Apache Hadoop và Apache Spark |