dataclasses
UtilitiesMô 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.
Vòng lặp Python
Tìm hiểu cách sử dụng vòng lặp Python để lặp lại dữ liệu. Nắm vững các phương pháp hay nhất về vòng lặp for, while, ngắt, tiếp tục và lặp bằng các ví dụ tương tác.
Cách sắp xếp danh sách trong Python
Tìm hiểu cách sắp xếp danh sách trong Python bằng phương thức Sort() và hàm Sort(). Khám phá các ví dụ về sắp xếp khóa tùy chỉnh và thứ tự đảo ngược.
Bảng cheat phương thức chuỗi Python
Hướng dẫn tham khảo đầy đủ về thao tác chuỗi Python. Làm chủ định dạng, tìm kiếm, phân tách, thay thế và kiểm tra thuộc tính chuỗi.
Python vs JavaScript: Ngôn ngữ lập trình nào tốt nhất?
So sánh toàn diện giữa Python và JavaScript. Khám phá sự khác biệt về cú pháp, hiệu suất, trường hợp sử dụng (phụ trợ so với giao diện người dùng) và các ví dụ về mã hóa.