Giới Thiệu
Chào bạn, nhà phát triển tương lai! 👋 Hãy tưởng tượng bạn là một đầu bếp tuyệt vời (bạn viết mã Python xuất sắc) và bạn cần gửi một công thức phức tạp đến một đầu bếp bánh ở một quốc gia khác. Bạn không thể hét lên từ bên này đại dương. Bạn cần một định dạng chuẩn, phổ quát để ghi lại công thức mà bất kỳ đầu bếp nào cũng có thể hiểu.
Trên web, thẻ công thức phổ quát đó chính là JSON.
JSON (JavaScript Object Notation) là ngôn ngữ chung của internet. Đây là cách mà các ứng dụng web, API và máy chủ giao tiếp với nhau, bất kể chúng được viết bằng Python, JavaScript, Java hay bất kỳ ngôn ngữ nào khác. Là nhà phát triển Python, việc học cách giao tiếp với JSON một cách thành thạo là một siêu năng lực không thể thiếu.
Phần tốt nhất? Python làm điều này trở nên cực kỳ dễ dàng.
JSON Trông Như Thế Nào?
Nếu bạn đã từng viết một từ điển trong Python, bạn sẽ thấy JSON rất quen thuộc. Nó hoàn toàn dựa trên việc lưu trữ dữ liệu theo cặp khóa-giá trị.
Dưới đây là một đoạn JSON mô tả một khóa học:
json
{
"courseName": "Full Stack Development",
"institute": "CoderCrafter",
"duration": "6 months",
"topics": ["Python", "JavaScript", "React", "Node.js", "MongoDB"],
"isActive": true,
"price": null
}
Nhìn thấy chưa? Nó trông gần giống như một từ điển Python. Điểm khác biệt chính là khóa phải được đặt trong dấu ngoặc kép và nó sử dụng true, false và null thay vì True, False và None trong Python.
Cây Cầu Ma Thuật: Mô-đun json của Python
Python không chỉ đoán cách xử lý JSON. Nó có một mô-đun tích hợp mang tên json, hoạt động như một dịch thuật viên hoàn hảo. Bạn không cần cài đặt gì cả. Chỉ cần import nó và bạn đã sẵn sàng để bắt đầu!
python
import json
Hai Siêu Năng Lực Cần Biết
Mô-đun json cung cấp cho bạn hai chức năng thiết yếu: json.dumps() và json.loads(). Hãy nhớ chúng với bảng cheat sheet đơn giản sau:
- json.dumps(): (Chuyển đổi thành chuỗi) Nhận một đối tượng Python (như một từ điển) và chuyển đổi nó thành một chuỗi JSON. Sử dụng điều này khi bạn cần gửi dữ liệu (ví dụ: đến một API hoặc một tệp).
- json.loads(): (Chuyển đổi từ chuỗi) Nhận một chuỗi JSON và chuyển đổi nó thành một đối tượng Python. Sử dụng khi bạn nhận dữ liệu (ví dụ: từ một API hoặc một tệp).
Siêu Năng Lực #1: Mã Hóa (Python -> Chuỗi JSON)
Bạn có một từ điển Python và cần gửi nó qua internet.
python
import json
# Đây là từ điển Python của chúng ta
python_course = {
"name": "MERN Stack Mastery",
"projects": 5,
"includes_authentication": True
}
# Chuyển đổi nó thành chuỗi JSON
json_string = json.dumps(python_course)
print(json_string)
print(type(json_string)) # Kiểm tra loại: bây giờ nó là một chuỗi!
Kết quả:
text
{"name": "MERN Stack Mastery", "projects": 5, "includes_authentication": true}
Chú ý cách mà True đã trở thành true? Hàm json.dumps() đã xử lý việc chuyển đổi đó cho chúng ta tự động.
Siêu Năng Lực #2: Giải Mã (Chuỗi JSON -> Python)
Bạn đã nhận được một chuỗi JSON từ một API và cần làm việc với nó trong Python.
python
# Đây là chuỗi JSON mà chúng ta nhận được từ nguồn bên ngoài
api_response = '{"student": "Priya", "grade": "A", "is_enrolled": true}'
# Chuyển đổi nó thành từ điển Python
python_data = json.loads(api_response)
print(python_data)
print(type(python_data)) # Kiểm tra loại: bây giờ nó là một từ điển!
print(f"Hello, {python_data['student']}! Your grade is {python_data['grade']}.")
Kết quả:
text
{'student': 'Priya', 'grade': 'A', 'is_enrolled': True}
Hello, Priya! Your grade is A.
Giờ đây, chúng ta có thể làm việc với dữ liệu như bất kỳ từ điển Python nào khác. Giá trị true từ JSON đã được chuyển đổi về True trong Python một cách liền mạch.
Làm Việc Với Tệp JSON
Thường thì bạn sẽ lưu trữ dữ liệu JSON trong một tệp (như tệp cấu hình). Mô-đun json cũng hỗ trợ bạn với json.dump() và json.load() (chú ý rằng không có chữ 's', điều này có nghĩa là chúng hoạt động với tệp).
Ghi vào một tệp JSON:
python
data = {"language": "Python", "rating": 10}
with open("data.json", "w") as file:
json.dump(data, file) # ghi JSON trực tiếp vào tệp
Đọc từ một tệp JSON:
python
with open("data.json", "r") as file:
data = json.load(file) # đọc tệp và chuyển đổi thành dict
print(data)
Tại Sao Điều Này Là Chìa Khóa Để Thực Hiện Các Dự Án Lớn Hơn
Hiểu biết về JSON không chỉ là một mẹo hay; nó là nền tảng của phát triển phần mềm hiện đại. Nó rất cần thiết cho:
- Làm việc với RESTful APIs (xương sống của các dịch vụ web).
- Lưu trữ dữ liệu cấu hình cho ứng dụng của bạn.
- Trao đổi dữ liệu giữa frontend (như React) và backend (như Node.js hoặc Python).
Đây chính là loại kỹ năng thiết thực, kết nối mà chúng tôi chú trọng trong các khóa học Phát Triển Full Stack và MERN Stack tại CoderCrafter. Chúng tôi không chỉ dạy bạn Python một cách tách rời; chúng tôi cho bạn thấy cách nó phù hợp vào hệ sinh thái lớn hơn để xây dựng các ứng dụng hoàn chỉnh, chức năng và ấn tượng.
Hãy Bắt Đầu Xây Dựng Các Ứng Dụng Full-Stack
Nếu bạn hào hứng với ý tưởng làm cho các công nghệ khác nhau giao tiếp và muốn học cách cấu trúc cơ sở dữ liệu, tạo backend vững chắc, và thiết kế frontend động, bạn đã tìm thấy ngôi nhà của mình.
Hãy truy cập codercrafter.in hôm nay để khám phá chương trình học của chúng tôi và đăng ký vào chương trình sẽ khởi động sự nghiệp của bạn trở thành nhà phát triển phần mềm.