728x90
문제점
Python 3.8을 사용중인데 typing을 활용하여 타입에 대한 힌트를 지정할 때 다음과 같은 오류가 발생합니다.
Traceback (most recent call last):
File "main.py", line 13, in <module>
def test(num_list: list[int]) -> list[int]:
TypeError: 'type' object is not subscriptable
원인
typing 힌트에서 제너릭에 대한 지원은 Python 3.9부터 시작됩니다.
관련 문서는 PEP 585 (https://peps.python.org/pep-0585/) 에 있습니다.
해결방법 1
Python에 대한 버전업이 가능하다면 3.9 이상으로 올리면 됩니다.
해결방법 2
Python에 대한 버전업이 불가능하다면 내장형 타입에 대한 Alias를 활용하면 됩니다.
일반적으로 이름은 동일하되 대문자로 시작합니다.
from typing import List
def test(num_list: List[int]) -> List[int]:
pass
반응형
'Language' 카테고리의 다른 글
[ReactJS] create-react-app의 실행 포트 변경 (1) | 2023.09.12 |
---|---|
[Python] 숫자를 문자열로 변경하기 (int to string, float to string) (0) | 2023.09.11 |
[Python] 문자열을 연산자로 사용하기 (0) | 2023.09.08 |
[Selenium Python] 'WebDriver' object has no attribute 'find_elements_by_class_name' (0) | 2023.08.14 |
[Selenium Python] chrome 115 버전 드라이버 오류 (0) | 2023.08.10 |