Notice
Recent Posts
Recent Comments
Link
SeouliteLab
파이썬 Pydantic 라이브러리: 데이터 검증 및 설정을 위한 간편한 도구 본문
Pydantic은 Python에서 데이터 검증과 설정을 위한 라이브러리로, 데이터 모델을 정의하고 해당 모델에 대한 입력 데이터의 유효성을 검사할 수 있습니다. 이를 통해 코드의 안정성을 높이고 개발자가 예상치 못한 오류를 방지할 수 있습니다.
예제 1: 기본 사용법
from pydantic import BaseModel
class User(BaseModel):
id: int
username: str
email: str
# 데이터 모델 생성
user_data = {"id": 1, "username": "john_doe", "email": "john@example.com"}
user = User(**user_data)
print(user)
# 출력 결과: User id=1 username='john_doe' email='john@example.com'
위 예제에서는 간단한 User
데이터 모델을 정의하고, 입력 데이터를 이 모델에 맞게 검증하여 인스턴스를 생성합니다.
예제 2: 선택적 필드와 기본값 설정
from pydantic import BaseModel
class Item(BaseModel):
name: str
description: str = None
price: float
# 데이터 모델 생성
item_data = {"name": "Laptop", "price": 1200.50}
item = Item(**item_data)
print(item)
# 출력 결과: Item name='Laptop' description=None price=1200.5
여기서는 선택적 필드인 description
에 기본값을 설정하여 모델을 만듭니다.
예제 3: 데이터 변환 및 유효성 검사
from pydantic import BaseModel, ValidationError
class Address(BaseModel):
city: str
zip_code: str
class Person(BaseModel):
name: str
age: int
address: Address
# 데이터 모델 생성 (유효하지 않은 경우)
try:
person_data = {"name": "Alice", "age": 30, "address": {"city": "New York"}}
person = Person(**person_data)
except ValidationError as e:
print(e)
"""
출력 결과:
1 validation error for Person
address -> zip_code
field required (type=value_error.missing)
"""
# 데이터 모델 생성 (유효한 경우)
person_data_valid = {
"name": "Alice",
"age": 30,
"address": {"city": "New York", "zip_code": "10001"}
}
person_valid = Person(**person_data_valid)
print(person_valid)
# 출력 결과: Person name='Alice' age=30 address=Address city='New York' zip_code='10001'
이 예제에서는 중첩된 데이터 모델을 사용하여 복잡한 데이터 구조를 검증하고, 유효성 검사 에러를 처리하는 방법을 보여줍니다.
'프로그래밍' 카테고리의 다른 글
파이썬의 UUID 라이브러리: 고유 식별자 생성과 활용 (0) | 2024.04.01 |
---|---|
파이썬의 ** 연산자: 딕셔너리 언패킹의 강력한 도구 (0) | 2024.04.01 |
jQuery .toggle() 메서드 이해와 활용 예제 (0) | 2024.04.01 |
jQuery .stop() 메서드 이해와 활용 예제 (0) | 2024.04.01 |
jQuery .slideUp() 메서드 이해와 활용 예제 (0) | 2024.04.01 |