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

Các bạn đọc like ủng hộ MUO nhé. Khi bạn mua hàng bằng các liên kết trên trang web của chúng tôi, chúng tôi có thể kiếm được hoa hồng liên kết. Đọc thêm

Bộ Python là một ký tự duy nhất để lọc các giá trị riêng biệt trong một danh sách hoặc một mảng các mục. Không giống như danh sách Python, từ điển hoặc bộ dữ liệu, nó không chấp nhận các bản sao. Vì vậy, nó có thể là một công cụ làm sạch dữ liệu có giá trị

Nhưng làm thế nào bạn có thể tạo một bộ và sử dụng nó trong Python?

Các tính năng của Python Sets

Ngoài việc không chấp nhận trùng lặp, một bộ chữ có các đặc điểm khác giúp phân biệt nó với các loại dữ liệu khác. Dưới đây là một số tính năng của nó

  • nó là bất biến. điều đó có nghĩa là bạn không thể thay đổi giá trị của một tập hợp sau khi tạo tập hợp đó
  • Một bộ chữ trả về sắp xếp động mỗi khi bạn tạo một. Về bản chất, các mục trong một bộ không có thứ tự
  • Bởi vì nó trình bày các mục không có thứ tự, không giống như danh sách và từ điển, bạn không thể lấy các giá trị của một tập hợp theo chỉ mục của chúng

Cách tạo và sử dụng bộ Python

Bây giờ bạn đã biết các tính năng cơ bản của một bộ Python. Hãy xem một số cách bạn có thể sử dụng nó trong chương trình của mình

Bạn sử dụng dấu ngoặc nhọn để tạo tập hợp trong Python. Vì vậy, một tập hợp là một danh sách các mục trong dấu ngoặc nhọn được phân tách bằng dấu phẩy

 mySet = {1, 2, "MUO", "Google"}
print[mySet]
Output: {1, 2, "MUO", "Google"}

Bạn cũng có thể chuyển đổi bất kỳ loại dữ liệu nào khác thành tập hợp. Chẳng hạn, đoạn mã dưới đây chuyển đổi một danh sách thành một tập hợp

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}

Để chắc chắn, bạn có thể kiểm tra kiểu dữ liệu của mySet

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[type[mySet]]
Output:

Giống như chúng tôi đã đề cập trước đó, một bộ không chấp nhận trùng lặp. Tính năng đó có thể hữu ích khi bạn muốn xóa một mảng bằng cách xóa các giá trị trùng lặp

Đoạn mã dưới đây loại bỏ các bản sao trong danh sách và trình bày đầu ra dưới dạng một bộ Python

 myList = [1, 2, 2 "MUO", "MUO", "Google", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, 'MUO', 'Google'}

Để minh họa thêm về tính năng lọc của một tập hợp, khi bạn in độ dài của một tập hợp, nó sẽ không tính các giá trị trùng lặp

 mySet = {1, 2, 2, "MUO", "MUO", "Google", "Google"}
print[len[mySet]]
Output: 4

Để xem trường hợp sử dụng tập hợp tốt hơn, hãy xóa các phần trùng lặp trong mảng sau. Nó giống như truy vấn các khóa duy nhất trong một mảng

Để làm điều này, hãy chuyển đổi một từ điển thành một bộ

 myDiction = {
"Mango":2, "Orange":2, "carrot":2, "MUO":"tech",
"MUO":"web", "Google":"search", "Google":"engine"
 }
uniqueSet = set[myDiction]
print["These are the unique keys: {}".format[uniqueSet]]

Output: These are the unique keys: {'Google', 'Mango', 'MUO', 'Orange', 'carrot'}

Việc chuyển đổi ở trên sẽ tự động loại bỏ các mục trùng lặp khỏi mảng

Bạn có thể sửa đổi mã ở trên bằng vòng lặp for để rõ ràng hơn

 for uniques in uniqueSet:
  print[uniques]

Bạn cũng có thể nối hai tập hợp với phương thức union[]

 setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA.union[setB]
print[newSet]
Output: {1, 3, 4, 5, 6}

Tuy nhiên, đoạn mã trên tham gia hai bộ và loại bỏ các giá trị trùng lặp

Ngoài ra, bạn có thể sử dụng đường ống. hàm nối các tập hợp trong Python

________số 8

Bạn cũng có thể tìm sự khác biệt giữa hai bộ trong Python

 setA = {1, 3, 5}
setB = {2, 4, 5,}
print[setA.difference[setB]]
Output: {1, 3}

Bạn có thể tìm thấy sự khác biệt đối xứng giữa các bộ A và B. Phương thức này trả về các mục trong một trong hai tập hợp nhưng loại trừ các giao điểm của chúng. Hãy xem cách nó hoạt động

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
0

Ngoài ra, bạn có thể sử dụng phương thức symmetric_difference[]

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
1

Hãy cũng xem cách bạn có thể tìm giao điểm của các tập hợp bên dưới

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
2

Mặc dù bạn có thể thêm vào danh sách bằng Python, nhưng bạn không thể làm điều tương tự đối với bộ Python. Tuy nhiên, bạn có thể thêm một mục vào cuối bộ bằng chức năng thêm

Nhưng hàm thêm Python chấp nhận một đối số, vì vậy bạn chỉ có thể thêm một bộ vào một tập hợp. Điều này trả về một tập hợp lồng nhau

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
3

Bộ Python sử dụng phương thức isdisjoint[] để kiểm tra xem hai bộ có rời rạc không. Sau đó, nó trả về một Boolean

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
4

Để kiểm tra xem một tập hợp có phải là tập hợp con của tập hợp khác hay không, hãy thay thế isdisjoint[] bằng issubset[]

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
5

Bạn có thể xóa một phần tử khỏi một tập hợp

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
6

Phương thức clear[] xóa các phần tử trong một tập hợp và trả về một tập hợp trống

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
7

Bạn có thể xóa một mục tùy ý khỏi một bộ và trả về giá trị của nó bằng cách sử dụng bộ. phương thức pop[]

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
8

Bạn cũng có thể cập nhật một bộ Python bằng phương thức update[]

 myList = [1, 2, "MUO", "Google"]
mySet = set[myList]
print[mySet]
Output: {1, 2, "MUO", "Google"}
9

Chơi xung quanh với bộ Python

Mặc dù chúng tôi đã thấy cách bạn có thể sử dụng một tập hợp trong Python, nhưng vẫn có những cách thực tế khác để áp dụng nó trong mã của bạn. Như bạn đã thấy, nó thậm chí có thể hữu ích khi dọn dẹp dữ liệu bằng Python

Ngoài tập hợp, các kiểu dữ liệu hoặc mảng Python khác có nhiều cách sử dụng và các ứng dụng khác nhau. Cố gắng chơi xung quanh với họ để hiểu rõ hơn về họ

Bộ có thể trùng lặp không?

Tập hợp là Tập hợp không được chứa các phần tử trùng lặp . Nó mô hình trừu tượng tập hợp toán học. Giao diện Set chỉ chứa các phương thức được kế thừa từ Bộ sưu tập và thêm hạn chế rằng các phần tử trùng lặp bị cấm.

Làm cách nào để thiết lập kiểm tra các bản sao Python?

Nhiều cách để kiểm tra xem có tồn tại trùng lặp trong danh sách Python hay không .
Độ dài của Danh sách và độ dài của Tập hợp khác nhau
Kiểm tra từng phần tử trong tập hợp. nếu có, dup, nếu không, thêm
Kiểm tra danh sách. đếm [] cho từng phần tử

Cái nào không cho phép trùng lặp trong Python?

Bạn có thể trực tiếp sử dụng bộ. add[] vì không thể thêm các giá trị trùng lặp vào tập hợp. .
Sử dụng toán tử not in để kiểm tra xem giá trị không có trong danh sách
Nếu giá trị không có trong danh sách, hãy sử dụng danh sách. phương thức append[] để thêm nó
Danh sách sẽ không chứa bất kỳ bản sao nào

Chủ Đề