Issubclass(typing.List, list) вызывает TypeErrorPython

Программы на Python
Anonymous
Issubclass(typing.List, list) вызывает TypeError

Сообщение Anonymous »

Код: Выделить всё

typing.List
определен как типирование класса.List(list, MutableSequence[T]) в документации, что должно означать, что это подкласс списка, но issubclass() кажется запутанным об этом:

Код: Выделить всё

issubclass(typing.List, typing.List)
возвращает True, подтверждая, что typing.List является классом.
Но issubclass(typing.List, list) вызывает TypeError: issubclass() arg 1, который должен быть классом, что указывает на обратное!
Чтобы устранить путаницу, используйте issubclass(list, typing.List) возвращает True.
Я понимаю, что гораздо более вероятно, что я что-то неправильно понял, чем то, что основные функции библиотеки не работают, но мне бы хотелось, чтобы это было так. рассказал почему!
Это Python 3.8.7

Подробнее здесь: https://stackoverflow.com/questions/675 ... -typeerror

Вернуться в «Python»