Annotated

Annotated trong Python là cách để gắn thêm thông tin (metadata) vào một kiểu dữ liệu.

Cú pháp:

from typing import Annotated

x: Annotated[int, "This is some metadata"]

Ví dụ đơn giản: kiểm tra quyền truy cập

from typing import Annotated

def view_dashboard(user: Annotated[str, "admin_only"]):
    print(f"Welcome, {user}!")

Ví dụ với custom validator

from typing import Annotated

def validate_positive(x: int) -> int:
    if x <= 0:
        raise ValueError("Value must be positive")
    return x

PositiveInt = Annotated[int, validate_positive]

def set_age(age: PositiveInt):
    print(f"Age set to: {age}")

set_age(25)   # OK
set_age(-1)   # Sẽ báo lỗi vì validator check

Ở đây PositiveIntint kèm theo hàm kiểm tra. Bạn có thể tưởng tượng Annotated giống như int, nhưng có thêm "hướng dẫn sử dụng".


Phiên bản #1
Được tạo 17 tháng 4 2025 04:59:53 bởi Đỗ Ngọc Tú
Được cập nhật 18 tháng 4 2025 04:46:33 bởi Đỗ Ngọc Tú