JSON을 사용하여 Python과 JavaScript 애플리케이션 간에 통신할 때 datetime 객체를 처리하는 것이 어려울 수 있습니다. 이 기사에서는 JavaScript에서 원활한 역직렬화를 위해 Python 날짜 시간 객체를 JSON으로 직렬화하는 최적의 접근 방식을 살펴봅니다.
JSON에서 날짜 시간 객체를 효과적으로 처리하려면 json.dumps()의 'default' 매개 변수를 활용할 수 있습니다. 직렬화 프로세스 중에 날짜/시간 객체를 처리하기 위해 사용자 정의 날짜 핸들러 함수가 제공될 수 있습니다.
<code class="python">import datetime # Create a date handler date_handler = lambda obj: ( obj.isoformat() if isinstance(obj, (datetime.datetime, datetime.date)) else None ) # Serialize a datetime object json_string = json.dumps(datetime.datetime.now(), default=date_handler) print(json_string) # Output: '"2023-02-13T18:38:48.942613"'</code>
직렬화 프로세스는 날짜/시간 객체를 JavaScript 애플리케이션에서 널리 지원되는 문자열 표현인 ISO 8601 표현으로 변환합니다.
다양한 객체 유형을 처리하기 위해 보다 포괄적인 기본 핸들러 기능을 정의할 수 있습니다.
<code class="python">def handler(obj): if hasattr(obj, 'isoformat'): return obj.isoformat() # Handle datetime objects elif isinstance(obj, ...): ... # Handle other custom object types else: raise TypeError(f'Object of type {type(obj)} with value {repr(obj)} is not JSON serializable')</code>
이 향상된 핸들러는 직렬화 중에 다양한 객체 유형을 처리하는 데 추가적인 유연성을 제공합니다.
위 내용은 JavaScript 역직렬화를 위해 Python 날짜/시간 개체를 JSON으로 직렬화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!