types — nomes para tipos incorporados¶
Este módulo define nomes para alguns tipos de objetos utilizados pelo interpretador Python padrão, mas que não estão expostos como builtins (como o tipo de funções ou geradores), juntamente com um pequeno número de auxiliares para a construção dinâmica de classes.
Esta é uma portação MicroPython de um subconjunto do módulo types do CPython. Vários aliases de tipos que não têm representação útil no MicroPython (CodeType, MappingProxyType, SimpleNamespace, TracebackType, FrameType, GetSetDescriptorType, MemberDescriptorType) são expostos como marcadores None para que o código que apenas os referencia continue a ser importado, mas não corresponderão a nenhum objeto real via isinstance().
Disponibilidade: Este módulo faz parte da micropython-lib. É incluído por predefinição apenas na OpenMV N6 e OpenMV AE3. Nas outras OpenMV Cams pode ser instalado com mip (ou congelado num firmware personalizado); ver Gestão de pacotes.
Aliases de tipos¶
- types.FunctionType: type¶
O tipo de funções definidas pelo utilizador e de objetos criados por instruções
def.
- types.LambdaType: type¶
O tipo de expressões
lambda. Idêntico aFunctionType.
- types.GeneratorType: type¶
O tipo de objetos iteradores de geradores produzidos por funções geradoras.
- types.MethodType: type¶
O tipo de métodos vinculados de instâncias de classes definidas pelo utilizador.
- types.BuiltinFunctionType: type¶
O tipo de funções incorporadas como
len()esys.exit().
- types.BuiltinMethodType: type¶
O tipo de métodos vinculados de tipos incorporados (por exemplo,
[].append). Idêntico aBuiltinFunctionType.
- types.CodeType: None¶
Marcador para o tipo de objeto
codedo CPython. SempreNonenesta implementação.
- types.MappingProxyType: None¶
Marcador para o tipo de proxy de mapeamento apenas de leitura devolvido por
type.__dict__no CPython. SempreNonenesta implementação.
- types.SimpleNamespace: None¶
Marcador para a classe
types.SimpleNamespacedo CPython. SempreNonenesta implementação.
- types.TracebackType: None¶
Marcador para o tipo de objetos de traceback. Sempre
Nonenesta implementação.
- types.FrameType: None¶
Marcador para o tipo de objetos de fotograma. Sempre
Nonenesta implementação.
Funções¶
- types.new_class(name: str, bases: tuple = (), kwds: dict | None = None, exec_body: Callable[[dict], None] | None = None) type¶
Cria um objeto de classe dinamicamente de uma forma que espelha a instrução
classem conformidade com a PEP 3115.name é o nome da nova classe.
bases é um tuplo de classes base.
kwds é um dicionário de argumentos de palavra-chave a passar à metaclasse. Uma chave
"metaclass", se presente, seleciona a metaclasse diretamente.exec_body é um callable opcional que será invocado com o espaço de nomes da classe recém-preparada; deve populá-lo com os atributos da nova classe.
Devolve a classe recém-construída.
- types.prepare_class(name: str, bases: tuple = (), kwds: dict | None = None) tuple[type, dict, dict]¶
Calcula a metaclasse apropriada e prepara o espaço de nomes para uma nova classe.
name é o nome da classe prestes a ser criada.
bases é um tuplo de classes base.
kwds é um dicionário de argumentos de palavra-chave. Uma chave
"metaclass", se presente, é removida do kwds devolvido e utilizada como metaclasse. Caso contrário, é usada a metaclasse debases[0], com fallback paratype.
Devolve um tuplo de 3 elementos
(metaclass, namespace, kwds)onde namespace é o resultado de chamarmetaclass.__prepare__se definido, ou um dicionário vazio caso contrário, e kwds é uma cópia da entrada com qualquer entrada"metaclass"removida.