Type Error: 'type' object is subscriptable
Написал в VS Code:
digits: list[int] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(digits)
Компилятор:
Type Error: 'type' object is subscriptable
Отладил код, но ничего не понял.
Ответы (2 шт):
Автор решения: Allito
→ Ссылка
Надо так:
from typing import List
digits: List[int] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
Автор решения: insolor
→ Ссылка
Возможность использовать list
(и других стандартных типов) в параметризованных (с квадратными скобками) аннотациях появилась начиная с Python 3.9, см. PEP-585 (он как раз про использование стандартных коллекций list
, set
, dict
и т.д. в качестве аннотаций).
На более старых версиях используйте List
из стандартного модуля typing.
Правильны оба варианта. На новых версиях рекомендуется использовать list
, но для совместимости со старыми версиями приходится использовать List
из typing
.