Q a m a t h

Loading...
Vui lòng chờ trong giây lát!

Bài 7 – Kiểu dữ liệu từ điển (dict)

Python
là một ngôn ngữ lập trình đa mẫu hình, lập trình hướng đối tượng và lập trình cấu trúc được hỗ trợ hoàn toàn, và nhiều tính năng của nó cũng hỗ trợ lập trình hàm và lập trình hướng khía cạnh (bao gồm siêu lập trình và siêu đối tượng (phương thức thần kỳ)).Các mẫu hình khác cũng được hỗ trợ thông qua các phần mở rộng, bao gồm thiết kế theo hợp đồng và lập trình logic.

1. Tìm hiểu kiểu dữ liệu từ điển (dict)
– Kiểu từ điển là một dạng kiểu dữ liệu không tuần tự có cấu trúc dạng cặp <khóa>: <giá trị>
– Cấu trúc của kiểu dữ liệu từ điển như sau:
{<khóa 1>:<giá trị 1>, <khóa 2>:<giá trị 2>,…,<khóa n>:<giá trị n>}

Trong đó:
+ Phần <khóa> có thể là kiểu dữ liệu xâu, số, tuple nhưng không được là list
+ Phần <giá trị> có thể là kiểu dữ liệu bất kỳ như: số, xâu, tuple, list, từ điển hay tập hợp
– Ví dụ:
#1 Tạo biến d kiểu từ điển (rỗng)
d = {}
#2 Tạo biến d kiểu từ điển (rỗng)
d = dict()
#3 Tạo biến hs kiểu từ điển gồm 3 phần tử
hs = {“tên”:”Nguyễn Tiến Duy”, “giới tính” : “Nam”, “năm sinh” : 1989}
Khi đó: hs[“tên”] = “Nguyễn Tiến Duy”
hs[“giới tính”] = “Nam” và hs[“năm sinh”] = 1989

2. Thao tác với kiểu dữ liệu từ điển
– Tham chiếu đến từng phần tử: <tên biến>[<khóa>] trả về <giá trị> tương ứng với <khóa>
– Để biết được tất cả các <khóa> của biến từ điển ta dùng lệnh:
# Cách 1:
for  <biến duyệt> in  <biến kiểu từ điển>:
print(<biến duyệt>,end=“ “)

# Cách 2:
for <biến duyệt>  in <biến kiểu từ điển>.keys():
print(<biến duyệt>,end=“ “)

– Để biết được tất cả các value của biến từ điển ta dùng lệnh:
for  <biến duyệt> in  <biến kiểu từ điển>.values():
print(<biến duyệt>,end=“ “)

– Để biết được tất cả key và value của biến từ điển ta dùng lệnh:
for  <key>,<value> in  <biến kiểu từ điển>.items():
print(<key>,<value>)

– Để cập nhật thông tin cho dữ liệu từ điển T1 từ từ điển T2, ta sử dụng lệnh:
T1.update(T2)

Trong đó:
+ T2 là kiểu dữ liệu từ điển có giá trị khóa giống hoặc là một tập hợp con của khóa trên từ điển T1
+ Câu lệnh trên giống câu lệnh sau:
for  <khóa> in  T2: T1[<khóa>] = T2[<khóa>]

– Để truy cập đến giá trị của dữ liệu từ điển ta có thể sử dụng hàm get như sau:
<biến kiểu từ điển>.get(<khóa> [,<mặc định>])

Trong đó:
+ Nếu <khóa> nhập đúng thì hàm sẽ trả lại đúng giá trị của từ điển tương ứng.
+ Nếu <khóa> không đúng (không có) thì hàm sẽ trả về giá trị <mặc định>
+ Hàm get sẽ hữu ích hơn cách truy cập từng phần tử của từ điển dạng <biến kiểu từ điển>[<khóa>] trong trường hợp key không tồn tại trong <biến kiểu từ điển>.
– Xóa khóa và dữ liệu của từ điển:
+ Xóa khóa: del <biến kiểu từ điển>[<khóa>]
+ Xóa dữ liệu của từ điển: <biến kiểu từ điển>.clear()
Ví dụ: Viết chương trình nhập vào một xâu bất kỳ, xuất ra màn hình số lần lặp của các từ đơn trong xâu vừa nhập.
Chương trình:
s = input(“Mời nhập vào xâu bất kỳ: “)
A = s.split()
#Tách các từ riêng lẻ (cách nhau bởi dấu cách) thành mảng kiểu xâu
dic = {} #Tạo biến kiểu từ điển rỗng
for w in A: #Duyệt qua từng phần tử của mảng A
dic[w] = dic.get(w,0) + 1
#Nếu có khóa w thì tăng 1 đơn vị, không có thì thêm vào
for key in dic: print(key, dic[key]) #Xuất ra màn hình các từ với số lần lặp
FacebookTwitterEmailMessengerShare
Mới hơn Cũ hơn
Trang trí đón tết cho blog/website bằng hình ảnh câu đối, cành mai