Hướng dẫn python two sets - trăn hai bộ

Dẫn nhập

Trong các bài trước, Kteam đã giới thiệu đến bạn một số container của Python.

Ở bài này Kteam sẽ giới thiệu tới bạn một container khác đó chính KIỂU DỮ LIỆU SET trong Python. KIỂU DỮ LIỆU SET trong Python.


Nội dung

Để đọc hiểu bài này tốt nhất bạn cần:

  • Cài đặt sẵn MÔI TRƯỜNG PHÁT TRIỂN CỦA PYTHON.
  • Xem qua bài CÁCH CHẠY CHƯƠNG TRÌNH PYTHON.
  • Nắm CÁCH GHI CHÚ và BIẾN TRONG PYTHON.
  • KIỂU DỮ LIỆU SỐ, KIỂU DỮ LIỆU CHUỖI trong Python
  • KIỂU DỮ LIỆU LIST, KIỂU DỮ LIỆU TUPLE trong Python.

Trong bài này, chúng ta sẽ cùng tìm hiểu các vấn đề

  • Giới thiệu về Set trong Python
  • Cách khởi tạo Set
  • Một số toán tử với Tuple trong Python
  • Indexing và cắt Set trong Python
  • Các phương thức của Set
  • Set không phải là một hash object

Giới thiệu về Set trong Python

Set là một container, tuy nhiên không được sử dụng nhiều bằng LIST hay TUPLE. là một container, tuy nhiên không được sử dụng nhiều bằng LIST hay TUPLE.

Một Set gồm các yếu tố sau:

  • Được giới hạn bởi cặp ngoặc {}, tất cả những gì nằm trong đó là những phần tử của Set. {}, tất cả những gì nằm trong đó là những phần tử của Set.
  • Các phần tử của Set được phân cách nhau ra bởi dấu phẩy (,). ,).
  • Set không chứa nhiều hơn 1 phần tử trùng lặp

Set chỉ có thể chứa các hashable object nhưng chính nó không phải là một hashable object. Do đó, bạn không thể chứa một set trong một set.hashable object nhưng chính nó không phải là một hashable object. Do đó, bạn không thể chứa một set trong một set.

Ví dụ: 

>>> set_1 = {69, 96}
>>> set_1
{96, 69}
>>> type(set_1) # kiểu set thuộc lớp set

>>> set_2 = {'How Kteam'}
>>> set_2
{'How Kteam'}
>>> set_3 = {(69, 'Free Education'), (1, 2, 3)}
>>> set_3
{(69, 'Free Education'), (1, 2, 3)}
>>> set_4 = {[1, 2], [3, 4]}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
>>> set_5 = {(1, 2, ['How Kteam'])}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'list'
>>> set_6 = {1, 2, {'HowKteam'}}
Traceback (most recent call last):
  File "", line 1, in 
TypeError: unhashable type: 'set'

Cách khởi tạo Set

Sử dụng cặp  dấu ngoặc {} và đặt giá  trị bên trong

Cú pháp:

{, , .., , }

Lưu ý:Khi khởi tạo bằng cách này, ít nhất phải có một giá trị.Khi khởi tạo bằng cách này, ít nhất phải có một giá trị.

Ví dụ:

>>> set_ = {1, 2, 3, 4}
>>> set_
{1, 2, 3, 4}
>>> set_1 = {1, 1, 1} # các giá trị trùng lặp bị loại bỏ
>>> set_1
{1}
>>> empty_set = {}  # thử khởi tạo set rỗng
>>> empty_set
{}
>>> type(empty_set) # không phải là set


Sử dụng Set Comprehension

>>> set_1 = {value for value in range(3)}
>>> set_1
{0, 1, 2}

Sử dụng constructor Set

Cú pháp:

set(iterable)(iterable)

{, , .., , } Giống hoàn toàn với việc bạn sử dụng constructor List. Khác biệt duy nhất là constructor Set sẽ tạo ra một Set.

Ví dụ: 

>>> set_1 = set((1, 2, 3))
>>> set_1
{1, 2, 3}
>>> set_2 = set('How Kteam')
>>> set_2 # set không quan tâm đến vị trí của các phần tử
{'o', ' ', 'a', 'm', 'H', 'K', 't', 'w', 'e'}
>>> set_3 = set('aaaaaaaaa')
>>> set_3
{'a'}
>>> set_4 = set([1, 6, 8, 3, 1, 1, 3, 6])
{8, 1, 3, 6}
>>> empty_set = set() # cách bạn tạo được empty set
>>> empty_set
set()

Cách khởi tạo Set

Sử dụng cặp  dấu ngoặc {} và đặt giá  trị bên trong

Cú pháp:

{, , .., , }

Lưu ý:Khi khởi tạo bằng cách này, ít nhất phải có một giá trị.in

Ví dụ: Kết quả trả về là True nếu value xuất hiện trong Set. Ngược lại sẽ là False

Sử dụng Set Comprehension

>>> 1 in {1, 2, 3}
True
>>> 4 in {'a', 'How Kteam', 5}
False

Sử dụng constructor Set

{, , .., , }

Lưu ý:Khi khởi tạo bằng cách này, ít nhất phải có một giá trị.-

Ví dụ: Kết quả trả về là một Set gồm các phần tử chỉ tồn tại trong Set1 mà không tồn tại trong Set2

Hướng dẫn python two sets - trăn hai bộ

Sử dụng Set Comprehension

>>> {1, 2, 3} – {2, 3}
{1}
>>> {1, 2, 3} - {4}
{1, 2, 3}
>>> {1, 2, 3} - {1, 2, 3}
set()
>>> {1, 2, 3} - {1, 2, 3, 4}
set()

Sử dụng constructor Set

{, , .., , }

Lưu ý:Khi khởi tạo bằng cách này, ít nhất phải có một giá trị.&

Ví dụ: Kết quả trả về là một Set chứa các phần tử vừa tồn tại trong Set1 vừa tồn tại trong Set2

Hướng dẫn python two sets - trăn hai bộ

Sử dụng Set Comprehension

>>> {1, 2, 3} & {4, 5}
set()
>>> {1, 2, 3} & {1, 4, 5}
{1}
>>> {1, 2, 3} & {1, 2, 3}
{1, 2, 3}

Sử dụng constructor Set

{, , .., , }

Lưu ý:Khi khởi tạo bằng cách này, ít nhất phải có một giá trị.|

Ví dụ:Kết quả trả về là một Set chứa tất cả các phần tử tồn tại trong hai Set

Hướng dẫn python two sets - trăn hai bộ

Sử dụng Set Comprehension

Sử dụng constructor Set

Công dụng: Giống hoàn toàn với việc bạn sử dụng constructor List. Khác biệt duy nhất là constructor Set sẽ tạo ra một Set.

{, , .., , }

Lưu ý:Khi khởi tạo bằng cách này, ít nhất phải có một giá trị.^

Ví dụ:Kết quả trả về là một Set chứa tất cả các phần tử chỉ tồn tại ở một trong hai Set

Hướng dẫn python two sets - trăn hai bộ

Sử dụng Set Comprehension

>>> {1, 2, 3} ^ {4, 5}
{1, 2, 3, 4, 5}
>>> {1, 2, 3} ^ {1, 2,  3}
set()
>>> {1, 2, 3} ^ {1, 4}
{2, 3, 4}

Sử dụng constructor Set

Công dụng: Giống hoàn toàn với việc bạn sử dụng constructor List. Khác biệt duy nhất là constructor Set sẽ tạo ra một Set.


Một số toán tử với Set trong Python

Nhằm giúp các bạn dễ hiểu hơn về các toán tử với Set trong Python, Kteam minh họa các set dưới dạng biểu đồ Venn, với S1, S2 tương ứng các Set1, Set2 chứa các phần tử.

Toán tử in

Sử dụng Set Comprehension

>>> a = {1, 2}
>>> id(a)
52255360
>>> a.add(3)
>>> id(a)
52255360

Sử dụng constructor Set

>>> set_ = {1, 2, 3, 4}
>>> set_
{1, 2, 3, 4}
>>> set_1 = {1, 1, 1} # các giá trị trùng lặp bị loại bỏ
>>> set_1
{1}
>>> empty_set = {}  # thử khởi tạo set rỗng
>>> empty_set
{}
>>> type(empty_set) # không phải là set

0

Công dụng: Giống hoàn toàn với việc bạn sử dụng constructor List. Khác biệt duy nhất là constructor Set sẽ tạo ra một Set.

Một số toán tử với Set trong Python

Nhằm giúp các bạn dễ hiểu hơn về các toán tử với Set trong Python, Kteam minh họa các set dưới dạng biểu đồ Venn, với S1, S2 tương ứng các Set1, Set2 chứa các phần tử.

>>> set_ = {1, 2, 3, 4}
>>> set_
{1, 2, 3, 4}
>>> set_1 = {1, 1, 1} # các giá trị trùng lặp bị loại bỏ
>>> set_1
{1}
>>> empty_set = {}  # thử khởi tạo set rỗng
>>> empty_set
{}
>>> type(empty_set) # không phải là set

1

Toán tử in


Cú pháp:

value in

Công dụng: Kết quả trả về là True nếu value xuất hiện trong Set. Ngược lại sẽ là False

Ví dụ:Luyện tập – Thử thách – Không ngại khó”.


Toán tử -

-