O que é o formato de ficheiro PXD?
.pxd é um formato de arquivo de desenvolvedor originalmente associado à linguagem de programação Pyrex e agora o formato de declaração padrão para o Cython, seu sucessor mantido ativamente. Arquivos .pxd armazenam declarações de módulo - definições de tipo, assinaturas de função e interfaces de biblioteca C externa - que podem ser compartilhadas entre módulos Cython. Muito parecido com um cabeçalho C, um .pxd é adicionado à compilação para que outros módulos possam acessar os tipos e funções declarados. O Cython armazena o código de implementação em arquivos .pyx.
O Pyrex permitia que desenvolvedores criassem módulos de extensão Python usando sintaxe semelhante a C. O Cython, derivado do Pyrex em 2007, suporta sintaxe C e Python e continua sendo o projeto mantido ativamente hoje. Tanto a sintaxe do Pyrex quanto a do Cython assemelham-se muito à do Python em vez de C, tornando a adoção acessível para desenvolvedores Python. Aplicações que misturam módulos escritos em C e Python são mais eficientes em termos de desempenho, ao custo de alguma complexidade de código e etapas de compilação adicionais. Um arquivo de declaração .pxd é trazido para outra fonte Cython usando a palavra-chave cimport - ao contrário dos módulos Python padrão, que usam import.
Segurança e proteção
RISCO: LOWUm .pxd é código-fonte em texto simples - não executável por si só e de baixo risco para abrir em um editor. Aplica-se a cautela usual com código-fonte: compilar um projeto que inclua arquivos .pyx/.pxd não confiáveis executa o compilador Cython e um compilador C nesse código, o que pode executar lógica de compilação arbitrária - compile apenas código em que você confia. Ler um .pxd é inofensivo.
Detalhes do formato
em resumo- Biblioteca de ícones Pixadex (Mac) - O aplicativo descontinuado para Mac Pixadex armazenava coleções de ícones em arquivos .pxd - sem relação com o Cython.
- Dados Pyxis / PixelView / ProxyDesigner - Várias ferramentas de nicho (um visualizador molecular Pyxis, ProxyDesigner) usavam .pxd para seus próprios arquivos binários de projeto/dados.
Programas que abrem arquivos PXD
Detalhes técnicos
especificação profunda| Tipo de arquivo | Arquivo de origem de declaração Cython em texto simples |
| Tipo MIME | text/x-cython (também aceito como text/plain) |
| Codificação de caracteres | UTF-8 ou ASCII; texto de origem legível por humanos sem cabeçalho binário |
| Assinatura do arquivo | Nenhuma - reconhecido pela extensão e palavras-chave específicas do Cython, como cdef, ctypedef e cimport |
| Formato emparelhado | Normalmente emparelhado com um arquivo de implementação .pyx de mesmo nome (ex: mymodule.pxd ao lado de mymodule.pyx) |
| Mecanismo de importação | Consumido por outros módulos Cython através da palavra-chave cimport, não pela instrução import padrão do Python |
| Restrições de conteúdo | Apenas declarações: tipos e funções cdef, ctypedef, struct/union/enum, blocos extern C/C++; não são permitidas implementações de funções ou instruções executáveis |
| Papel na compilação | Apenas no momento da compilação; não é compilado em um binário separado - as declarações são incorporadas nos arquivos .pyx consumidores pelo compilador Cython |
| Análogo em C | Equivalente funcional de um arquivo de cabeçalho .h de C para módulos Cython |
| Cadeia de ferramentas | Processado pelo compilador Cython; integra-se com sistemas de compilação setuptools, pip, scikit-build e CMake |
| Suporte de plataforma | Multiplataforma: Windows, macOS, Linux - qualquer SO com um compilador C e CPython ou PyPy |
| Tamanho de arquivo típico | De algumas centenas de bytes a dezenas de KB, dependendo do número de símbolos declarados |
| Versão da linguagem | Segue a versão da linguagem Cython da cadeia de ferramentas de compilação (atualmente Cython 3.x) |
| Lançado | Pyrex (early 2000s); adopted and extended by Cython (forked 2007) |
| Versão mais recente | Tracks the current Cython release (Cython 3.x) |
| Padrão aberto | Sim · livre de royalties |
| Especificação | cython.readthedocs.io |
Conversões de PXD
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos PXD.