Xóa các bản sao khỏi Tuple Python

Tạo từ điển, sử dụng các mục Danh sách làm khóa. Điều này sẽ tự động loại bỏ mọi trùng lặp vì từ điển không thể có khóa trùng lặp

Tạo từ điển

mylist = ["a", "b", "a", "c", "c"]
danh sách của tôi = danh sách (dict. fromkeys(mylist))
in (danh sách của tôi)

Sau đó, chuyển từ điển trở lại thành danh sách

Chuyển đổi thành một danh sách

mylist = ["a", "b", "a", "c", "c"]
danh sách của tôi = danh sách (dict. fromkeys(mylist))
in (danh sách của tôi)

Bây giờ chúng tôi có một Danh sách không có bất kỳ bản sao nào và nó có cùng thứ tự với Danh sách ban đầu

In Danh sách để chứng minh kết quả

In danh sách

mylist = ["a", "b", "a", "c", "c"]
danh sách của tôi = danh sách (dict. fromkeys(mylist))
in (danh sách của tôi)


Học cách lọc dữ liệu bằng Python như một nhà phân tích dữ liệu

Xóa các bản sao khỏi Tuple Python

Thử tham gia các buổi đào tạo thực hành với hướng dẫn từng bước từ chuyên gia. Hãy thử dự án có hướng dẫn được thực hiện với sự cộng tác của Coursera ngay bây giờ

Get started


Tạo một chức năng

Nếu bạn muốn có một chức năng mà bạn có thể gửi các danh sách của mình và nhận lại chúng mà không bị trùng lặp, bạn có thể tạo một chức năng và chèn mã từ ví dụ trên

Ngôn ngữ lập trình Python là ngôn ngữ lập trình cấp cao và hướng đối tượng. Python là một ngôn ngữ lập trình cấp cao mạnh mẽ, dễ học. Nó có một cách tiếp cận đơn giản nhưng hiệu quả đối với lập trình hướng đối tượng

Tuples trong Python là một tập hợp các mục tương tự như danh sách với sự khác biệt là nó được sắp xếp theo thứ tự và không thay đổi

Thí dụ

tuple = ("python", "includehelp", 43, 54.23)

Danh sách là kiểu dữ liệu dãy. Nó có thể thay đổi vì các giá trị của nó trong danh sách có thể được sửa đổi. Nó là một tập hợp các giá trị được sắp xếp theo thứ tự đặt trong dấu ngoặc vuông []

Thí dụ

list = [3 ,1,  5, 7]

Danh sách các bộ là một danh sách mà mỗi phần tử là một bộ

Thí dụ

tupList = [("python", 7), ("learn" , 1), ("programming", 7), ("code" , 3)]

Loại bỏ các bộ dữ liệu trùng lặp bất kể thứ tự

Để loại bỏ các giá trị trùng lặp không phân biệt thứ tự, chúng ta cần sắp xếp các bộ dữ liệu của danh sách rồi kiểm tra các giá trị trùng lặp để loại bỏ chúng rồi in các giá trị

Input:
tupList = [(3, 1), (5, 8), (1, 3), (4, 8), (2, 9)]

Output:
[(3, 1), (5, 8), (1, 3), (4, 8), (2, 9)]

Python cung cấp nhiều phương thức để thực hiện một tác vụ. Ở đây, chúng tôi cũng có một vài cách để giải quyết vấn đề. Hãy khám phá chúng,

Phương pháp 1

Đầu tiên chúng ta sẽ sắp xếp từng bộ của danh sách bằng phương thức sorted() và map(). Sau đó, chúng tôi sẽ sử dụng các bộ để loại bỏ các bản sao. Và sau đó chúng tôi sẽ chuyển đổi nó trở lại danh sách

Chương trình

# Program to remove duplicate tuples 

# Creating and printing the list of tuples
tupList = [(3, 1), (5, 8), (1, 3), (4, 8), (2, 9)]
print("Initial List of Tuples : " + str(tupList))

# Removing all duplicate tuples from the list
tupListWoDup = list(set(map(tuple, map(sorted, tupList))))

# Printing the list of tuples 
print("List of Tuples after removal of duplicates : " + str(tupListWoDup))

đầu ra

Initial List of Tuples : [(3, 1), (5, 8), (1, 3), (4, 8), (2, 9)]
List of Tuples after removal of duplicates : [(2, 9), (1, 3), (5, 8), (4, 8)]

Phương pháp 2

Một phương pháp khác để loại bỏ các bộ dữ liệu trùng lặp là sử dụng khả năng hiểu danh sách với sự kết hợp của các phương thức sorted() và set()

Chúng ta sẽ sắp xếp danh sách bằng phương thức sorted() và sau đó sử dụng phương thức set() để loại bỏ các bản trùng lặp. Sau đó chuyển đổi nó trở lại danh sách

Một danh sách có thể được sử dụng để lưu trữ các giá trị không đồng nhất (i. e của bất kỳ loại dữ liệu nào như số nguyên, dấu phẩy động, chuỗi, v.v.)

Một danh sách các bộ về cơ bản chứa các bộ được đặt trong một danh sách

Khả năng hiểu danh sách là cách viết tắt để lặp qua danh sách và thực hiện các thao tác trên danh sách đó

Dưới đây là một minh chứng tương tự -

Thí dụ

Bản thử trực tiếp

my_list_1 = [(11, 14), (0, 78), (33, 11), (0, 78)]

print("The list of tuple is : ")
print(my_list_1)

my_unique_list = list(set([i for i in my_list_1]))

print("The list of tuples after removing duplicates is :")
print(my_unique_list)

đầu ra

The list of tuple is :
[(11, 14), (0, 78), (33, 11), (0, 78)]
The list of tuples after removing duplicates is :
[(33, 11), (11, 14), (0, 78)]

Giải trình

  • Một danh sách các bộ được xác định và được hiển thị trên bàn điều khiển
  • Danh sách được lặp đi lặp lại và được chuyển đổi thành tập hợp
  • Bằng cách này, chỉ các phần tử duy nhất được lưu trữ
  • Điều này một lần nữa được chuyển đổi thành một danh sách
  • Điều này được gán cho một giá trị
  • Nó được hiển thị trên bàn điều khiển

Xóa các bản sao khỏi Tuple Python


Xóa các bản sao khỏi Tuple Python

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách loại bỏ các phần tử trùng lặp khỏi một bộ trong Python. Đôi khi trong bộ Python, dữ liệu hoặc đối tượng được lặp lại gấp đôi và gấp ba lần, các phần tử lặp lại đó được gọi là phần tử trùng lặp

một bộ là gì?

Một tuple là một tập hợp các đối tượng. Tuples là bất biến. Bộ dữ liệu Không thể thay đổi như danh sách và bộ dữ liệu được sử dụng dấu ngoặc đơn

Chương trình Python để loại bỏ các phần tử trùng lặp khỏi Tuple

Trong bộ Python đôi khi các phần tử hoặc đối tượng được lặp lại, các phần tử và đối tượng được lặp lại này là các phần tử trùng lặp trong bộ Python

Ở đây chúng tôi trình bày một ví dụ về cách xóa các phần tử trùng lặp khỏi một bộ trong Python

________số 8_______

Trong ví dụ đã cho, chúng tôi lấy một biến my_tuple chứa các phần tử bên trong dấu ngoặc đơn. Đã cho đầu ra tuple là

('jan', 'feb', 'mar', 'apr', 'jan', 'feb')

Trong ví dụ này, chúng tôi hiển thị các phần tử lặp lại, những phần tử lặp lại đó là một phần tử trùng lặp

Ở đây chúng tôi trình bày việc sử dụng phương thức hiểu danh sách cộng với phương thức set() để loại bỏ các phần tử trùng lặp này khỏi danh sách tuple

Đưa ra  Ví dụ, chúng tôi lấy một phương thức set() là b. Chúng ta cũng lấy một biến result chứa toàn bộ vòng lặp for và điều kiện vòng lặp để kiểm tra xem phần tử lưu trữ my_tuple đã cho có được thêm vào trong hàm b set() hay không. Nếu my_tuple đưa ra được lưu trữ lặp đi lặp lại phần tử thì nó không được lặp lại trong b set() và trong toàn bộ phần tử trùng lặp khi đưa ra tuple. Dưới ví dụ đã cho, chúng tôi sử dụng thao tác cắt lát để in toàn bộ danh sách được đưa ra

Dưới đây là ví dụ về việc xóa phần tử trùng lặp khỏi bộ dữ liệu

my_tuple=("jan","feb","mar","apr","jan","feb")
print(my_tuple)
b=set()

result=[element for element in my_tuple
    if not (tuple(element) in b
        or  b.add(tuple(element)))]
print(str(result))

Ví dụ đã cho có đầu ra là

('jan', 'feb', 'mar', 'apr', 'jan', 'feb')
['jan', 'feb', 'mar', 'apr']

Ở đây chúng tôi hiển thị đầu ra bao gồm cả các phần tử trùng lặp và loại bỏ các phần tử trùng lặp khỏi một bộ trong Python. Đầu ra đầu tiên được cung cấp các phần tử trùng lặp nhưng đầu ra thứ hai được đưa ra để loại bỏ các phần tử trùng lặp. Việc loại bỏ các phần tử trùng lặp bên trong dấu ngoặc vuông do sử dụng thao tác lát

Tuple có trùng lặp trong Python không?

Tuple là một tập hợp được sắp xếp theo thứ tự và không thể thay đổi. Cho phép thành viên trùng lặp .

Hoạt động nào có thể loại bỏ các bộ dữ liệu trùng lặp?

Việc Thao tác dự án xóa các bộ dữ liệu trùng lặp.

Bạn có thể xóa các mục trùng lặp khỏi danh sách trong Python không?

Chúng tôi có thể xóa các bản sao khỏi danh sách Python bằng cách sử dụng các lớp con từ điển như Counter và FreqDist . Cả Counter và FreqDist đều hoạt động theo cùng một cách. Chúng là các bộ sưu tập trong đó các phần tử duy nhất là các khóa từ điển và số lần xuất hiện của chúng là các giá trị.