CodeGym /Các khóa học /Python SELF VI /Làm việc với tập hợp

Làm việc với tập hợp

Python SELF VI
Mức độ , Bài học
Có sẵn

3.1 Xác định số lượng phần tử

Để xác định số lượng phần tử trong một tập hợp, bạn có thể sử dụng hàm len(). Hàm này trả về số lượng phần tử duy nhất trong tập hợp.

Ví dụ sử dụng hàm len()


my_set = {1, 2, 3, 4, 5}
print(len(my_set))  # Kết quả: 5
        

Trong ví dụ này, tập hợp my_set chứa năm phần tử. Hàm len() trả về số lượng này.

Kiểm tra tập hợp rỗng

Bạn có thể sử dụng hàm len() để kiểm tra, tập hợp có rỗng hay không. Điều này hữu ích trong điều kiện và vòng lặp.


my_set = set()

if len(my_set) == 0:
    print("Tập hợp rỗng")
else:
    print("Tập hợp không rỗng")
        

3.2 Xác định kiểu

Nếu bạn không biết chính xác liệu biến có chứa tập hợp hay không, để chắc chắn hơn, bạn có thể sử dụng hàm type(). Hàm type() trong Python trả về kiểu của đối tượng. Điều này hữu ích cho việc kiểm tra kiểu dữ liệu, đặc biệt khi bạn làm việc với tập hợp và các tập hợp dữ liệu khác.

Ví dụ:


my_set = {1, 2, 3}
print(type(my_set))  # Kết quả: <class 'set'>

        

Trong ví dụ này, type(my_set) trả về <class 'set'>, cho biết rằng my_set là một tập hợp.

Kiểm tra kiểu dữ liệu

Bạn có thể sử dụng hàm type() để kiểm tra kiểu dữ liệu trước khi thực hiện các thao tác. Điều này giúp tránh các lỗi liên quan đến kiểu dữ liệu không tương thích.


def add_element(collection, element):
    if type(collection) is set:
        collection.add(element)
    else:
        print("Lỗi: tập hợp cung cấp không phải là một tập hợp")
        
my_set = {1, 2, 3}
add_element(my_set, 4)  # Phần tử sẽ được thêm vào
add_element([1, 2, 3], 4)  # Sẽ hiện lỗi
        

Trong ví dụ này, hàm add_element() kiểm tra xem tập hợp cung cấp có phải là tập hợp trước khi thêm phần tử.

Hàm type() có thể hữu ích khi tạo các cấu trúc dữ liệu phức tạp, có thể chứa nhiều kiểu dữ liệu khác nhau. Nó cho phép xác định kiểu dữ liệu động và xử lý phù hợp.

Ví dụ:


my_set = {}
print(type(my_set))  # Kết quả: <class 'dict'> 
        

Dấu ngoặc nhọn được sử dụng để tạo tập hợp và tạo từ điển (có chút khác biệt về cú pháp bên trong). Theo mặc định, nếu không có phần tử nào trong dấu ngoặc - đó là tạo một từ điển!

3.3 Thứ tự phần tử

Tập hợp là một loại tập hợp dữ liệu đặc biệt, chỉ lưu trữ các phần tử duy nhất. Một trong những đặc điểm chính của tập hợp là chúng không có thứ tự. Điều này có nghĩa là các phần tử của tập hợp không có thứ tự cố định, và thứ tự của các phần tử có thể thay đổi trong mỗi lần duyệt qua.

Tập hợp trong Python được thực hiện dựa trên hash table. Khi bạn thêm một phần tử vào tập hợp, Python tính toán giá trị băm của nó và sử dụng nó để xác định vị trí của phần tử trong hash table. Cấu trúc dữ liệu này cung cấp việc kiểm tra, thêm và xóa phần tử nhanh chóng. Tuy nhiên, do sử dụng giá trị băm, thứ tự của phần tử không được giữ nguyên và không thể dự đoán.

Ví dụ về tính không có thứ tự của tập hợp

Xem một ví dụ đơn giản:


my_set = {3, 1, 2}
for item in my_set:
    print(item)
    

Khi thực hiện mã này, các phần tử có thể được xuất ra theo bất kỳ thứ tự nào, ví dụ, 1 2 3 hoặc 3 1 2. Điều này có nghĩa là thứ tự xuất ra của các phần tử trong tập hợp không được đảm bảo và có thể thay đổi mỗi lần chạy chương trình.

Tầm quan trọng của tính không có thứ tự

Tính không có thứ tự của tập hợp có một số hậu quả quan trọng:

  • Không có chỉ mục: không giống như danh sách và bộ, tập hợp không hỗ trợ truy cập các phần tử theo chỉ mục. Thử thực hiện my_set[0] sẽ gây ra lỗi.
  • Hiệu suất: tính không có thứ tự cho phép tập hợp có hiệu suất hiệu quả, đặc biệt khi thêm và xóa phần tử.
  • Tính duy nhất của phần tử: Tập hợp tự động xóa các phần tử trùng lặp, điều này khiến chúng hữu ích để lưu trữ dữ liệu duy nhất.
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION