Cách sử dụng set trong Python

Bài số 11 trong 26 bài của series Python Không Khó

Nội dung bài viết

Set trong python là gì?

set trong python

Set trong python là một tập các giá trị  không có thứ tự. Mỗi giá trị trong set là duy nhất, không thể lặp lại và bất biến( tức bạn không thể thay đổi giá trị các phần tử trong set).

Tuy nhiên các set có thể thay đổi. Chúng ta có thể thêm, xóa các phần tử trong set.

Các set  có thể được sử dụng để thực hiện các phép tập hợp như phép giao, hợp, …

Cách tạo một set trong python

Mỗi set được tạo bằng cách đặt các phần tử của nó vào trong dấu {}, được phân tách bằng dấu phẩy, hoặc sử dụng hàm dựng sẵn set().

Các phần tử của set có thể thuộc nhiều kiểu dữ liệu khác  nhau như: numbers, string,… Nhưng các phần tử không được là các kiểu dữ liệu có thể thay đổi như list hay dictionary.

Lưu ý: nếu khi tạo set mà có các phần tử trùng nhau thì sẽ tự động loại bỏ các phần tử lặp.

Truy cập các phần tử trong set

Không thể truy cập đến một phần tử thông qua vị trí của chúng, vì set không có thứ tự các phần tử. Thay vào đó, ta phải sử dụng vòng for .

kết quả:

Thêm phần tử

Chúng ta có thể thêm một phần tử vào set trong python bằng cách sử dụng hàm add() hoăc thêm nhiều bằng cách sử dụng hàm update().

Sử dụng hàm update() để cập nhật set.

Loại bỏ phần tử

Để loại bỏ một phần tử trong set có nhiều cách.

Hàm removed

Nếu xóa phần tử bằng remove thì trong trường hợp phần tử cần xóa không có trong set thì sẽ phát sinh lỗi.

Hàm discard

Khi xóa bằng discard, nếu phần tử không có trong set thì sẽ không phát sinh lỗi.

Hàm pop

popsẽ xóa phần tử cuối cùng, nên cẩn thận khi sử dụng popvì bạn sẽ không biết được phần tử cuối cùng là phần tử nào.

Hàm clear

Với hàm clear() sẽ xóa toàn bộ các phần tử trong set.

Hàm del

Hàm del sẽ xóa set trong python.

Vì lúc này set đã bị xóa nên khi gọi hàm printsẽ thông báo lỗi.

Kiểm tra phần tử có trong set hay không

Sử dụng in  hoặc not inđể kiểm tra một phần tử đã chỉ định có trong set hay không.

Các hàm với set trong python

set trong python

Phép hợp( nối hai set trong python)

Hợp của hai set sẽ bao gồm tất cả các phần tử của hai set đó. Hợp được thực hiện bằng toán tử |,hoặc cũng có thể sử dụng hàm union().

Hàm intersection

Hàm này được mô tả như phép giao hai set. Giao của hai set là tập hợp các phần tử có cả ở trong cả hai set. Phép giao được thưc hiện bằng toán tử & ,hoặc sử dụng hàm  intersection().

Hàm difference

Hàm này được mô tả như phép trừ hai set trong python. Phép trừ sẽ trả về một tập hợp các giá trị chỉ có ở set A hoặc set B. Phép trừ được thực hiện bằng cách sử dụng -toán tử. Tương tự có thể được thực hiện bằng hàm difference().

symmetric_difference

Hàm này có công dụng như là phép đối xứng. Trả về tập hợp những giá trị có trong set A và set B. Phép đối xứng được thực hiện bằng toán tử ^ hoặc hàm symmetric_difference().

Các hàm tích hợp với set khác

Ngoài các hàm kẻ trên thì set trong python cũng hỗ trợ rất nhiều hàm tương tự như các kiểu dữ liệu khác

Hàm any

Trả về True khi một  giá trị là đúng. Hai giá trị sai là 0 và False, hoặc set là một set trống.

kết quả:

Hàm max

Trả về giá trị lớn nhất trong set.

Hàm min

Trả về giá trị nhỏ nhất trong set.

Hàm sorted

Trả về một danh sách đã được sắp xếp.

Hàm sum

Sẽ trả về tổng của các phần tử nếu các phần tử thuộc kiểu số.

 

Vừa rồi mình đã giới thiệu cho các bạn về Set, các hàm thường dùng và một số hàm liên quan. Hi vọng qua bài viết cấc bạn sẽ có thêm những kiến thức bổ ích.

Hẹn các bạn vào các bài học sau!!!

Hãy tham gia group lập trình không khó để cùng thảo luận về các vấn đề về lập trình.

Các bài viết trong Series

Bài trước: Đếm các từ xuất hiện trong chuỗi pythonBài sau: Sử dụng tuple trong Python