typing.Dict & Dict와 파이썬에서의 용도의 차이점

Marion Paul Kenneth Mendoza 2023년6월21일
typing.Dict & Dict와 파이썬에서의 용도의 차이점

Python 함수에서 사전을 인수로 선언할 때 일반적으로 키 및 값 데이터 유형을 로컬 변수가 아닌 전역 변수로 선언합니다.

사전 키와 값의 데이터 유형을 로컬 변수로 선언해야 하는 경우 어떻게 해야 합니까? 이 기사에서는 typing.Dict와 함께 유형 힌트를 사용하는 방법과 일반적인 dict 기능과 구별하는 방법에 대해 설명합니다.

typing.Dictdict의 차이점과 파이썬에서의 용도

Python 함수에서 사전을 인수로 선언할 때 typing.Dict를 사용하는 것과 일반 dict를 사용하는 것 사이에는 실제 차이가 없습니다.

그러나 typing.Dict 함수는 Generic type 함수로 키와 값의 데이터 유형을 지정하여 보다 유연하게 사용할 수 있습니다.

또한 일반적으로 컨테이너에 보관된 객체에 대한 유형 정보를 정적으로 유추할 수 없기 때문에 컨테이너 요소에 대한 공통 유형을 나타내는 구독을 지원하도록 추상 기본 클래스가 확장되었습니다.

def exampleFunction(typing.Dict[str, int])

예를 들어, 프로젝트 수명의 어느 시점에서 사전 인수를 좀 더 정확하게 정의하려고 합니다. 이 시점에서 typing.Dicttyping.Dict[key_type, value_type]로 확장하는 것이 대체하는 것보다 더 사소한 변경입니다. dict()로 전체 사전.

Mapping 또는 MutableMapping 유형을 사용하여 사전을 보다 일반적으로 만들 수 있습니다. 사전은 하나의 매핑이지만 매핑 인터페이스를 충족하는 다른 개체를 만들 수 있습니다.

def exampleFunction(typing.Mapping[str, int])

Python은 유형 힌트를 적용하지 않습니다. 힌트일 뿐이며 런타임 또는 컴파일 타임에 유형을 구현하는 데 사용되지 않습니다.

그러나 Python 버전 3.9 이상을 사용하는 경우 Python은 typing.Dict를 더 이상 사용하지 않으며 대신 내장 dict() 명령에 유형 힌트를 적용합니다. Python에서 사전을 선언하는 동안 유형을 지정할 수 있습니다.

def exampleFunction(dict[str, int])
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn