dataclasses

Utilities

Mô hình dữ liệu được gõ

Tổng quan dataclasses

Mô-đun lớp dữ liệu là một phần của thư viện chuẩn Python (Python 3.7+). Nó cung cấp một trình trang trí và các hàm để tự động tạo ra các phương thức đặc biệt như __init__, __repr__, __eq__ và __hash__ cho các lớp chủ yếu được sử dụng để lưu trữ dữ liệu. Các lớp dữ liệu giảm bớt bản soạn sẵn trong khi vẫn giữ cho mô hình của bạn có thể đọc và bảo trì được.

Vì các lớp dữ liệu là một phần của thư viện chuẩn của Python nên chúng hoạt động ngay lập tức trongPyRunmà không cần nhập thêm hoặc tải xuống micropip. Chúng là cách nhẹ nhàng nhất để xác định các mô hình dữ liệu có cấu trúc trong Python và đặc biệt hữu ích cho việc học lập trình hướng đối tượng hoặc xây dựng các ứng dụng nhỏ.

Đầu ra mã & thực thi

Các mô hình được đánh máy với tính năng sắp xếp và tuần tự hóa.

from dataclasses import dataclass, field, asdict
from typing import List

@dataclass(order=True)
class Student:
    name: str
    grade: float
    subjects: List[str] = field(default_factory=list)

    def gpa_letter(self) -> str:
        if self.grade >= 90: return 'A'
        if self.grade >= 80: return 'B'
        if self.grade >= 70: return 'C'
        return 'D'

students = [
    Student("Alice",   94.5, ["Math", "Physics"]),
    Student("Bob",     78.2, ["History", "English"]),
    Student("Charlie", 88.0, ["CS", "Math", "Bio"]),
]

for s in sorted(students, reverse=True):
    print(f"{s.name:<10} GPA={s.grade:.1f} ({s.gpa_letter()}) — {', '.join(s.subjects)}")

print("\nAs dicts:")
for row in students:
    print(asdict(row))

Gói liên quan

Tài nguyên Python được đề xuất

Mở rộng kiến thức của bạn với các hướng dẫn tương tác, bảng ghi chú và so sánh mã có liên quan.