Python - Bài tập về Dictionary: Hướng dẫn thân thiện để nắm vững các từ điển

Xin chào bạn, người lập trình Python mới! Mình rất vui được làm hướng dẫn cho bạn trong hành trình thú vị vào thế giới các từ điển Python. Như một người đã dạy lập trình trong nhiều năm, mình có thể kể cho bạn biết rằng các từ điển như một chiếc cúp sắt Thụy Sĩ của Python - rất linh hoạt và hữu ích. Hãy nhấc tay vào mình và bắt đầu!

Python - Dictionary Exercises

Các từ điển là gì?

Trước khi bắt đầu với các bài tập, hãy nhanh chóng tóm tắt lại điều gì là các từ điển. Hãy tưởng tượng một cuốn sách thần kỳ mà bạn có thể ngay lập tức tìm thấy bất kỳ thông tin nào chỉ bằng cách suy nghĩ về một từ khóa. Đó chính là điều gì một từ điển Python là! Nó là một tập hợp các cặp khóa-giá trị, nơi mỗi khóa hoạt động như một chỉ số duy nhất cho giá trị liên quan.

Dưới đây là một ví dụ đơn giản:

tu_dien_dau_tien_cua_toi = {"ten": "Alice", "tuoi": 25, "thanh_pho": "Wonderland"}

Trong từ điển này, "ten", "tuoi" và "thanh_pho" là các khóa, và "Alice", 25 và "Wonderland" là các giá trị tương ứng.

Bây giờ, hãy bắt đầu với một số bài tập!

Bài tập từ điển 1: Tạo và truy cập các từ điển

Nhiệm vụ: Tạo một từ điển về cuốn sách yêu thích của bạn và truy cập thông tin của nó.

# Bước 1: Tạo từ điển
cuon_sach_yeu_thich = {
"ten": "The Hitchhiker's Guide to the Galaxy",
"tac_gia": "Douglas Adams",
"nam_xuat_ban": 1979,
"the_loai": "Science Fiction"
}

# Bước 2: Truy cập và in thông tin
print(f"Cuốn sách yêu thích của tôi là {cuon_sach_yeu_thich['ten']} của {cuon_sach_yeu_thich['tac_gia']}.")
print(f"Nó được xuất bản vào năm {cuon_sach_yeu_thich['nam_xuat_ban']} và là một cuốn sách {cuon_sach_yeu_thich['the_loai']}.")

Hãy phân tích như sau:

  1. Chúng ta tạo một từ điển có tên là cuon_sach_yeu_thich với bốn cặp khóa-giá trị.
  2. Chúng ta sử dụng dấu ngoặc vuông [] để truy cập các giá trị bằng cách sử dụng các khóa của chúng.
  3. Chúng ta sử dụng chuỗi f để định dạng đầu ra của mình một cách gọn gàng.

Khi bạn chạy mã này, bạn sẽ thấy một mô tả đẹp mắt về cuốn sách. Cool, phải không?

Thử thách: Thêm một cặp khóa-giá trị mới vào từ điển

Hãy thử thêm một "đánh giá" vào từ điển cuon_sach_yeu_thich của bạn. Điều này như sau:

cuon_sach_yeu_thich["danh_gia"] = 5
print(f"Tôi đánh giá {cuon_sach_yeu_thich['ten']} một số {cuon_sach_yeu_thich['danh_gia']} trên 5 sao!")

Bài tập từ điển 2: Chỉnh sửa các từ điển

Nhiệm vụ: Tạo một từ điển lịch trình hàng tuần của bạn và chỉnh sửa nó.

# Bước 1: Tạo từ điển lịch trình
lich_trinh_hang_tuan = {
"Thứ 2": "Lớp học Python",
"Thứ 3": "Gym",
"Thứ 4": "Đêm xem phim",
"Thứ 5": "Nhóm học",
"Thứ 6": "Đêm chơi game"
}

# Bước 2: In lịch trình ban đầu
print("Lịch trình ban đầu:")
for ngay, hoat_dong in lich_trinh_hang_tuan.items():
print(f"{ngay}: {hoat_dong}")

# Bước 3: Chỉnh sửa lịch trình
lich_trinh_hang_tuan["Thứ 3"] = "Lớp yoga"
lich_trinh_hang_tuan["Thứ 7"] = "Đi leo núi"

# Bước 4: In lịch trình đã cập nhật
print("\nLịch trình đã cập nhật:")
for ngay, hoat_dong in lich_trinh_hang_tuan.items():
print(f"{ngay}: {hoat_dong}")

Trong bài tập này:

  1. Chúng ta tạo một từ điển về lịch trình hàng tuần của mình.
  2. Chúng ta sử dụng vòng lặp for với phương thức .items() để lặp qua từ điển và in ra từng ngày và hoạt động.
  3. Chúng ta chỉnh sửa một mục hiện có ("Thứ 3") và thêm một mục mới ("Thứ 7").
  4. Chúng ta in ra lịch trình đã cập nhật để thấy các thay đổi của mình.

Bài tập này cho thấy sự linh hoạt của các từ điển. Bạn có thể dễ dàng cập nhật thông tin hiện có hoặc thêm dữ liệu mới khi cần.

Bài tập từ điển 3: Các phương thức của từ điển

Nhiệm vụ: Khám phá các phương thức hữu ích của từ điển bằng cách sử dụng một danh sách mua sắm.

# Bước 1: Tạo từ điển danh sách mua sắm
danh_sach_mua_sam = {
"tao": 5,
"chuoi": 3,
"sua": 2,
"banh_moi": 1
}

# Bước 2: Sử dụng phương thức get()
print(f"Tôi cần mua {danh_sach_mua_sam.get('tao', 0)} táo.")
print(f"Tôi cần mua {danh_sach_mua_sam.get('cam', 0)} cam.")

# Bước 3: Sử dụng phương thức keys()
print("\nCác mặt hàng trong danh sách mua sắm của tôi:")
for mat_hang in danh_sach_mua_sam.keys():
print(mat_hang)

# Bước 4: Sử dụng phương thức values()
tong_so_mat_hang = sum(danh_sach_mua_sam.values())
print(f"\nTổng số mặt hàng cần mua: {tong_so_mat_hang}")

# Bước 5: Sử dụng phương thức pop()
mat_hang_xoa = danh_sach_mua_sam.pop('banh_moi', 'Không tìm thấy')
print(f"\nĐã xóa {mat_hang_xoa} khỏi danh sách.")

# Bước 6: In danh sách cuối cùng
print("\nDanh sách mua sắm cuối cùng:")
for mat_hang, so_luong in danh_sach_mua_sam.items():
print(f"{mat_hang}: {so_luong}")

Bài tập này giới thiệu cho bạn một số phương thức hữu ích của từ điển:

  • get(): Truy xuất một giá trị cho một khóa cụ thể, trả về giá trị mặc định nếu khóa không tồn tại.
  • keys(): Trả về một cái nhìn của tất cả các khóa trong từ điển.
  • values(): Trả về một cái nhìn của tất cả các giá trị trong từ điển.
  • pop(): Xóa một cặp khóa-giá trị và trả về giá trị.
  • items(): Trả về một cái nhìn của tất cả các cặp khóa-giá trị dưới dạng các tổ hợp.

Các phương thức này làm việc với các từ điển trở nên dễ dàng hơn!

Các chương trình từ điển

Bây giờ đã quay lại các khái niệm cơ bản, hãy xem xét một số chương trình thực tế sử dụng các từ điển.

Chương trình 1: Sổ địa chỉ đơn giản

def so_dia_chi():
danh_ba = {}
while True:
hanh_dong = input("Bạn muốn làm gì? (them/xem/thoat): ").lower()
if hanh_dong == "thoat":
break
elif hanh_dong == "them":
ten = input("Nhập tên liên hệ: ")
so_dien_thoai = input("Nhập số điện thoại: ")
danh_ba[ten] = so_dien_thoai
print(f"Đã thêm {ten} vào danh bạ.")
elif hanh_dong == "xem":
if danh_ba:
for ten, so_dien_thoai in danh_ba.items():
print(f"{ten}: {so_dien_thoai}")
else:
print("Sổ địa chỉ của bạn trống.")
else:
print("Hành động không hợp lệ. Vui lòng thử lại.")

so_dia_chi()

Chương trình này tạo ra một sổ địa chỉ đơn giản trong đó bạn có thể thêm và xem các liên hệ. Nó minh họa cách sử dụng các từ điển để lưu trữ và truy xuất thông tin một cách người dùng thân thiện.

Chương trình 2: Đếm tần suất từ

def dem_tan_suat_tu(sentence):
tu = sentence.lower().split()
tan_suat = {}
for word in tu:
tan_suat[word] = tan_suat.get(word, 0) + 1
return tan_suat

# Ví dụ sử dụng
van_ban_mau = "The quick brown fox jumps over the lazy dog. The dog barks."
ket_qua = dem_tan_suat_tu(van_ban_mau)
print("Tần suất từ:")
for word, count in ket_qua.items():
print(f"{word}: {count}")

Chương trình này đếm tần suất của các từ trong một đoạn văn cụ thể. Nó cho thấy cách sử dụng các từ điển để phân tích dữ liệu và đếm số lần xuất hiện.

Kết luận

Chúc mừng! Bạn đã hoàn thành một chuyến du lịch như một gió thổi qua các từ điển Python. Từ việc tạo và truy cập các từ điển đến việc chỉnh sửa chúng và sử dụng các phương thức tích hợp, bạn đã vượt qua rất nhiều nội dung. Hãy nhớ, luyện tập là chìa khóa để hoàn hảo. Đừng ngần ngại thử nghiệm các khái niệm này trong dự án của riêng bạn.

Các từ điển là những công cụ mạnh mẽ trong Python, và việc nắm vững chúng sẽ mở ra một thế giới khổng lồ các khả năng trong hành trình lập trình của bạn. Hãy tiếp tục lập trình, duy trì sự tò mò, và quan trọng nhất, hãy tận hưởng! Ai biết? Bạn có thể sẽ sử dụng các từ điển để tổ chức một hướng dẫn Hitchhiker's Guide của riêng bạn cho galaxy Python! ??

Credits: Image by storyset