Dictionary trong python là gì | Laptrinhcanban.com

Dictionary trong python là gì

Tìm hiểu về dictionary trong python. Bạn sẽ hiểu được Kiểu dữ liệu Dictionary trong Python là gì, cách chỉ định hai thành phần tạo nên dictionary là key value trong python, cũng như ưu nhược điểm của việc sử dụng dictionary trong python của sau bài học này.

Dictionary trong python là gì

Dictionary trong python là kiểu dữ liệu ánh xạcó khả năng thay đổi. Kiểu dữ liệu ánh xạ (mapping type) có ý nghĩa là các đối tượng trong đó được tạo bởi một tổ hợp key và value tương ứng, còn có khả năng thay đổi(mutable) có ý nghĩa sau khi tạo dictionary trong python, chúng ta có thể thêm, xóa hoặc thay đổi giá trị của nó.

Để hiểu một cách đơn giản, có thể định nghĩa Dictionary trong Python là kiểu dữ liệu có phần tử là các cặp khóa-giá trị được đặt giữa cặp dấu {} và có khả năng thay đổi sau khi tạo ra.

{ key1 : value1 , key2 : value2 , key3 : value3 }

Dictionary trong python là gì

Cách tạo dictionary trong python

Mỗi phần tử của Dictionary trong Python được tạo thành bởi một cặp key và value (khóa và giá trị) được phân tách bởi dấu hai chấm :.
Các phần tử được phân tách với nhau bằng một dấu phẩy , và được đặt giữa cặp dấu {} để tạo nên kiểu dữ liệu Dictionary trong Python như sau:

{
key1 : value1,
key2 : value2,
...
keyN : valueN
}

Ví dụ:

author = {'name': "Kiyoshi", 'old': 30, 'adress': "Japan"}

Về cách tạo dictionary, hãy tìm hiểu chi tiết tại bài viết Tạo dictionary trong python.

Key value trong python

Không giống như list hay tuple là các kiểu dữ liệu squence (kiểu trình tự) vốn dùng index để quản lý phần tử, kiểu dictionary trong python thuộc kiểu ánh xạ (Mapping type) lại dùng key để quản lý các phần tử của nó.
Do đo, không tồn tại index trong dictionary cũng như chúng ta cũng không thể dùng chức năng cắt lát slice với kiểu dữ liệu dictionary trong python.

Thay vào đó, chúng ta dùng cặp Key value trong python với Key trong Python và giá trị tương ứng của nó là value trong Python để tạo phần tử, cũng như truy cập hoặc lấy các phần tử trong dictionary.

Key trong Python

Có hai điều cần lưu ý khi chỉ định Key trong Python.

  • Key trong Python phải là duy nhất. Một key không thể xuất hiện hai lần (key không được trùng nhau).
  • Key phải là giá trị hashable. Một giá trị được gọi là hashable nếu nó không bao giờ thay đổi trong suốt thời gian tồn tại của nó. Cụ thể chúng ta chỉ có thể chỉ định Key trong Python bằng một trong ba đối tượng bất biến Immutable (không thể thay đổi) trong python gồm Số, Chuỗi, Tuple mà thôi.

An object is hashable if it has a hash value which never changes during its lifetime.
Python Glossary

Các value được quản lý bởi Key trong Python, do đó nếu lỡ tay thay đổi các key này ở dictionary trong python thì rất nhiều lỗi sẽ xảy ra khi chúng ta chạy chương trình.

Value trong Python

Ngược lại với key, bạn có thể chỉ định bất kỳ kiểu dữ liệu nào cho Value trong Python. Ngoài ra, các giá trị này có thể trùng lặp, điều đó có nghĩa có thể có nhiều Key có giá trị Value giống nhau cùng tồn tại ở dictionary trong python.
Ví dụ, chúng ta có thể tạo dictionary trong python bằng cách chỉ định list, tuple, chuỗi hoặc dùng chính dictionary cho value như sau:

population= {'Hà Nội':900 , 'Ninh Bình':370, 'Nam Định':250 ,'Thanh Hóa':230 } 

user = {
"id":1, "infor":{"name": "Kiyoshi","old":"30"},
"id":2, "infor": "Tokyo",
"adress":"Tokyo"
}
print(population)
print(user)

Kết quả:

{'Hà Nội': 900, 'Ninh Bình': 370, 'Nam Định': 250, 'Thanh Hóa': 230}
{'id': 2, 'infor': 'Tokyo', 'adress': 'Tokyo'}

Ưu nhược điểm của dictionary trong Python

Ưu điểm của việc sử dụng dictionary trong Python

Ưu điểm của việc sử dụng từ điển là, nếu bạn dùng list hoặc tuple, bạn phải truy xuất phần tử được lưu trữ theo đúng với index của chúng. Còn khi dùng dictionary, bạn không cần phải quan tâm tới thứ tự của phần tử trong list nữa.
Với dictionary trong Python, phần tử có thể được truy xuất bằng cách chỉ định khóa của nó, do đó phần tử trong dictionary có thể được truy xuất một cách trực quan khi lập trình.

Ngoài ra, chúng ta có thể dễ tìm ra lỗi trong chương trình bằng cách chỉ định giá trị của key, nên đây cũng là lợi thế lớn giúp chương trình dễ dàng bảo trì hơn.

Nhược điểm của việc sử dụng dictionary trong Python

Nhược điểm của từ điển là tốc độ xử lý chậm hơn so với tuples, và người mới bắt đầu cần có thời gian để làm quen với phương pháp mô tả và cách suy nghĩ, xử lý các khóa và giá trị.

Tổng kết và thực hành

Trên đây Kiyoshi đã hướng dẫn bạn về Kiểu dữ liệu Dictionary trong Python , cách chỉ định key value trong python, cũng như ưu nhược điểm của việc sử dụng dictionary trong python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.