Trang chủ » Bài 8: Dictionary trong Python

Bài 8: Dictionary trong Python

Tác giả:
Đánh giá bài đăng
0
80

Ở các phần trước chúng ta đã được tìm hiểu về các kiểu dữ liệu như string, number, list, tuple rồi, và phần này chúng ta sẽ cùng đi vào tìm hiểu một kiểu dữ liệu cuối cùng trong 5 kiểu dữ liệu chuẩn của Python đó là Dictionary.

1, Dictionary là gì?

Kiểu dữ liệu dictionary trong Python là một kiểu dữ liệu lưu trữ các giá trị chứa key và value , nhìn một cách tổng quát thì nó giống với Json. Và đối với kiểu dữ liệu này thì các giá trị bên trong nó không được sắp xếp theo một trật tự nào cả.

Để khai báo một dictionary chúng ta sử dụng cặp dấu {} theo cú pháp sau:

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

Trong đókey1: value1, key2: value2,..., keyN: valueN là các key và giá trị của kiểu dữ liệu dictionary. Và tên của key thì các bạn phải tuân thủ theo một số quy tắc sau:

  • Các phần tử đều phải có key.
  • Key chỉ có thể là số hoặc chuỗi.
  • Key phải là duy nhất, nếu không nó sẽ nhận giá trị của phần tử có key được xuất hiện cuối cùng.
  • Key khi đã được khai báo thì không thể đổi được tên.
  • Key có phân biệt hoa thường.

VD: Mình sẽ khai báo một dictionary có tên là person.

person = {
    'name': 'Vũ Thanh Tài',
    'age': 22,
    'male': True,
    'status': 'single'        
    }

2, Truy cập đến các phần tử trong dictionary.

Ở trên mình có nói là các phần tử trong dictionary được sắp xếp không theo một thứ tự nào cả, nên cũng chính vì điều đó mà chúng ta không thể nào sử dụng được cú pháp như đối với string và list mà chúng ta sẽ dựa vào các key của nó để truy xuất.

-Để truy cập đến các phần tử trong dictionary thì các bạn sử dụng cú pháp sau:

dicName[key]

Trong đó:

  • dicName là tên của của dictionary.
  • key là tên của key các bạn muốn lấy ra trong dictionary.

VD: Mình sẽ lấy ra name và status của dictionary person trên.

person = {
    'name': 'Vũ Thanh Tài',
    'age': 22,
    'male': True,
    'status': 'single'        
    }
person['name'] # Vũ Thanh Tài

person['status'] # signle

3, Thay đổi giá trị của dictionary.

Để thay đổi giá trị của phần tử trong dictionary thì ta cũng là tương tự như đối với list là truy cập đến phần tử cần truy cập và thay đổi giá trị của nó.

VD: Mình sẽ đổi status thành married (an ủi mình tí :D).

person = {
    'name': 'Vũ Thanh Tài',
    'age': 22,
    'male': True,
    'status': 'alone'        
    }

person['status'] = 'married'
print(person)
#{'name': 'Vu Thanh Tài', 'age': 22, 'male': True, 'status': 'married'}

4, Xóa phần tử trong diction.

Để xóa một phần tử trong dictionary thì chúng ta sử dụng hàm del và chọn phần tử cần xóa.

VD:

person = {
    'name': 'Vũ Thanh Tài',
    'age': 22,
    'male': True,
    'status': 'alone'        
    }

del person['status']
print(person)
#{'name': 'Vu Thanh Tài', 'age': 22, 'male': True}

Và nếu như bạn muốn xóa tất cả các phần tử bên trong dictionary thì bạn sử dụng phương thức clear theo cú pháp:

dictName.clear();

Trong đó, dictName là dictionary mà bạn muốn xóa hết phần tử.

VD:

person = {
    'name': 'Vũ Thanh Tài',
    'age': 22,
    'male': True,
    'status': 'alone'        
    }

person.clear()
print(person)
#{}

Và nếu như bạn muốn xóa hẳn dictionary thì bạn dùng hàm del để xóa.

VD:

person = {
    'name': 'Vũ Thanh Tài',
    'age': 22,
    'male': True,
    'status': 'alone'        
    }

del person
print(person)
#error: name 'person' is not defined

5, Dictionary lồng nhau.

Cũng giống như kiểu dữ liệu list, tuple thì trong dicrtionary 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ó.

VD: Mình sẽ lồng một dictionary vào trong dictionary và đồng thời truy vấn luôn đến dictionary con.

person = {
    'name': 'Vũ Thanh Tài',
    'option': {
                'age': 22,
                'male': True,
                'status': 'alone'
            }        
    }

print(person['option']['age'])
# 22

6, Lời kết.

Về kiểu dữ liệu này nếu như bạn nào đã từng làm việc vớ Json rồi thì chắc cũng chẳn cần đọc nữa 😀

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 *

Facebook Messenger Chat Zalo
Messenger Zalo