Kiểu Dữ Liệu Dict Trong Python

Kiểu dữ liệu Dict là một kiểu dữ liệu rất thông dụng khi làm việc trong Python, hãy cùng MCI tìm hiểu những điều bạn cần biết khi làm việc với Dict trong python nhé.
dict trong python
Kiểu dữ liệu dict trong python

1. Kiểu dữ liệu Dict trong Python là gì?

Kiểu dữ liệu Dict (viết tắt của Dictionary) trong Python là một kiểu dữ liệu lưu trữ giống như ListTuple, Dict có chức năng lưu trữ các giá trị chứa key và value, và các dữ liệu này không được sắp xếp theo một trật tự nào cả.

Kiểu dữ liệu Dict trong python được xác định bởi các yếu tố dưới đây:

  • Được giới hạn trong cặp dấu ngoặc nhọn { }, tất cả những gì nằm trong cặp dấu ngoặc nhọn được hiểu là phần tử của Dict
  • Các phần tử của Dict được phân cách nhau ra bởi dấu phẩy “,”
  • Các phần tử của Dict phải là một cặp key-value
  • Cặp key-value của phần tử trong Dict được phân cách bởi dấu hai chấm “:”
  • Các key buộc phải là một hash object

2. Cách khởi tạo phần tử của Dict trong Python

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

Để thêm 1 hay n phần tử vào trong kiểu dữ liệu Dict trong Python, bạn thực hiện cú pháp như sau:

Cú pháp: {<key_1: value_1>, <key_2: value_2>, .., <key_n: value_n>}

Ví dụ:

>>> dic = {'name': 'MCI', 'member': 30}
>>> dic
{'name': 'MCI', 'member': 30}
>>> empty_dict = {} 	# khởi tạo dict rỗng
>>> empty_dict
{}
>>> type(dic) 		# kiểu dữ liệu dict thuộc lớp 'dict'
<class 'dict'>

Trong đó:

  • Khóa của Dictionary có thể là chuỗi hoặc số, khóa này là duy nhất ở từng cấp.
  • Giá trị của Dictionary có thể chuỗi, số hoặc các cấu trúc List, Tuple, Set hoặc thậm chí là Dictionary.

2.2 Sử dụng phương thức Dict Comprehension trong Python

Hãy cùng xem xét ví dụ minh hoạ sau:

Ví dụ:
>>> dic = {key: value for key, value in [('name', 'MCI'), ('member', 30)]}
>>> dic
{'name': 'MCI', 'member': 30}

2.3 Sử dụng constructor Dict

Có 03 cách để chúng ta khởi tạo một Dict bằng constructor.

Cách 1: Khởi tạo một Dict rỗng với cú pháp như sau: Dict()

Ví dụ:

>>> dic = dict()
>>> dic
{}

Cách 2: Khởi tạo bằng iterable

Cú pháp khởi tạo: dict(iterable)

Trong đó, iterable này đặc biệt hơn các iterable mà bạn dùng để khởi tạo List hay Tuple, đó là các phần tử trong iterable phải có 2 value và đó chính là cặp key-value.

Bạn có thể dùng List, Tuple hoặc bất kỳ container nào (trừ mapping object) để chứa cặp key-value.

Ví dụ:

>>> iter_ = [('name', 'MCI'), ('member', 30)]
>>> dic = dict(iter_)
>>> dic
{'name': 'MCI', 'member': 30}

Cách 3: Khởi tạo bằng keyword arguments

Cú pháp: dict(**kwargs)

Khái niệm keyword arguments có thể hiểu đơn giản là giống như việc bạn khởi tạo biến và giá trị rồi đưa cho dict đó giữ giùm.

Một lưu ý là những biến này không bị ảnh hưởng hoặc ảnh hưởng gì đến các biến bên ngoài.

Ví dụ:

>>> name = 'FPT'
>>> member = 15000
>>> dic = dict(name='MCI', member=30)
>>> dic
{'name': 'MCI', 'member': 30}
>>> name
'FPT'
>>> member
15000

2.4 Sử dụng phương thức fromkeys

Cú pháp: dict.fromkeys(iterable,value)

Cách này cho phép ta khởi tạo một dict với các keys nằm trong một iterable. Các giá trị này đều sẽ nhận được một giá trị với mặc định là None

Ví dụ:

>>> iter_ = ('name', 'number')
>>> dic_none = dict.fromkeys(iter_)
>>> dic_none
{'name': None, 'number': None}
>>> dic = dict.fromkeys(iter_, 'non None value')
>>> dic
{'name': 'non None value', 'number': 'non None value'}

3. Cập nhật giá trị phần tử cho Dict trong Python

Dictionary cho phép cập nhật giá trị ứng với một khoá nào đó, và nó sẽ thêm mới một phần tử nếu khoá đó không tồn tại trên dictionary

Ví dụ:

>>> dic 			
{'name': 'MCI', 'member': 30}
>>> dic['name'] = 'MCI Vietnam'
>>> dic
{'name': 'MCI Vietnam', 'member': 30}
>>> dic['member'] = dic['member'] + 1
>>> dic
{'name': 'MCI Vietnam', 'member': 31}
>>> dic['age'] = 18
>>> dic
{'name': 'MCI Vietnam', 'member': 31,'age': 18}

4. Xóa phần tử của một Dict trong python

Có rất nhiều cách để chúng ta có thể xoá phần tử trong một Dict trong python.

4.1 Sử dụng từ khoá del

Lệnh del sẽ được sử dụng để xoá phần tử với key chỉ định

Ví dụ:

>>> dic 			
{'name': 'MCI Vietnam', 'member': 31,'age': 18}
>>> del dic['age']
>>> dic
{'name': 'MCI Vietnam', 'member': 31}

4.2. Sử dụng hàm clear()

Hàm clear() sẽ xoá toàn bộ phần tử của dictionary

Ví dụ:

>>> dic 			
{'name': 'MCI Vietnam', 'member': 31,'age': 18}
>>> dic.clear()
>>> dic
{}

4.3. Sử dụng hàm pop()

Hàm pop() xoá phần tử với key được chỉ định

Ví dụ:

>>> dic 			
{'name': 'MCI Vietnam', 'member': 31,'age': 18}
>>> dic.pop('age')
18
>>> dic
{'name': 'MCI Vietnam', 'member': 31}

5. Cách dùng Dictionary lồng

Cũng giống kiểu dữ liệu List, Tuple thì trong Dictionary các bạn cũng có thể lồng bất kỳ kiểu dữ liệu nào bạn thích vào trong nó. Một Dictionary chứa một dictionary khác gọi là Dictionary lồng

Ví dụ:

>>> dic = {'name':'MCI','member': 30,'age': {18,19,20}}
>>> print (dic)
{'name': 'MCI', 'member': 10, 'age': {18, 19, 20}}

Trên đây là những kiến thức cơ bản bạn cần nắm rõ khi làm việc với kiểu dữ liệu Dict trong Python.

Nếu bạn quan tâm, hãy tham khảo ngay khoá học Python từ cơ bản đến nâng cao tại MCI nhé!

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *