how to use Annotated[ some_data_type , some_function ]
from typing import Annotated
# 검증 함수 정의 , define validation function for Annotated type argument
def validate_positive(value: int) -> int:
if value < 0:
raise ValueError(f"Value must be positive, but got {value}")
return value
# Annotated 타입 정의 , Define Annotated type
int_val = Annotated[int, validate_positive]
# 검증 함수 적용 예제, use int_val type
def process_value(value: int_val) -> None:
validated_value = int_val.__args__[0](value)
print(f"Processed value: {validated_value}")
try:
# 유효한 값 예제, example of valid input value
process_value(10) # 출력: Processed value: 10
# 유효하지 않은 값 예제, example of invalid input value
process_value(-5) # ValueError 예외 발생
except ValueError as e:
print(e) # 출력: Value must be positive, but got -5'Code snippet' 카테고리의 다른 글
| Ipopt install on ubuntu , linux , python optimization (0) | 2024.12.12 |
|---|---|
| How to change git branch name and push to remote git repository (1) | 2024.09.13 |