.PYD

Archivo PYD

Python extension module (Windows)
Hacer una pregunta
RESPUESTA RÁPIDA

Un archivo .pyd es un módulo de extensión de Python compilado para Windows; técnicamente es una DLL que contiene código nativo C/C++ que Python importa como un módulo normal. No se abre directamente; Python lo carga automáticamente cuando usas un paquete que lo necesita. Si ves un error «ImportError: DLL load failed», reinstala el paquete con pip para tu versión exacta de Python y arquitectura.

Desarrollador: Python Software Foundation (CPython); built on Microsoft's PE/DLL format Categoría: Archivos de desarrollo Estándar abierto MIME: application/octet-stream
SE ABRE EN Windows
Relacionado: .DO · .MD · .HEX · .XSD

En esta página

19k+ extensiones indexadas
Última revisión Jun 29, 2026

¿No está seguro de qué es su archivo?

Suelte cualquier archivo en nuestro identificador - leemos solo los primeros bytes para nombrar el formato.

Identificar un archivo

¿Qué es el formato de archivo PYD?

Los módulos dinámicos de Python se guardan como archivos .pyd en sistemas Windows. Un archivo .pyd es una DLL de Windows en formato binario PE (Portable Executable), que se distingue por exportar un punto de entrada PyInit_<modulename> al que el intérprete llama al importar. Los módulos .pyd contienen librerías que pueden ser utilizadas por otras aplicaciones de Python; las librerías dinámicas permiten una carga de código más rápida y modularidad en las aplicaciones. A diferencia de los archivos de bytecode .pyc y .pyo, los archivos .pyd son específicos de Windows; el formato .so cumple la misma función en Linux y macOS.

Los archivos .pyd contienen módulos de extensión de Python compilados. Los módulos contienen uno o más espacios de nombres, y los programas de Python que utilizan dichos módulos pueden hacer referencia a funciones en ellos. Los módulos pueden ser utilizados por múltiples aplicaciones de Python. Las compilaciones modernas incluyen una etiqueta ABI en el nombre del archivo -por ejemplo, cp312-win_amd64.pyd-, vinculando el archivo a una versión específica de CPython y arquitectura. La creación y distribución de módulos .pyd suele gestionarse mediante herramientas de compilación como Cython o setuptools.

Seguridad y protección

RIESGO: MEDIUM

Un .pyd es código ejecutable nativo que Python ejecuta en el proceso sin aislamiento, por lo que un .pyd malicioso puede hacer cualquier cosa que tu programa Python pueda hacer. Los riesgos prácticos son: (1) un .pyd colocado en una carpeta que Python busca puede secuestrar una importación (secuestro de orden de búsqueda DLL/PYD), y (2) descargar archivos .pyd individuales de sitios aleatorios para «arreglar» un error es un vector de malware; siempre reinstala el paquete adecuado desde PyPI con pip en su lugar. Los archivos .pyd dentro de paquetes legítimos instalados por pip son normales. Trata cualquier .pyd inesperado y sin firmar en Descargas o en una carpeta de proyecto con sospecha y escanéalo.

Detalles del formato

en pocas palabras
NOMBRE COMPLETOPython extension module (Windows)también conocido como Python dynamic module, Compiled Python extension
DESARROLLADORPython Software Foundation (CPython); built on Microsoft's PE/DLL formatdesde Late 1990s - Python on Windows has loaded extension modules from .pyd (a renamed .dll) since the Python 1.x/2.0 era
TIPO MIMEapplication/octet-stream
TIPODLL Windows PE (Portable Executable) que expone una función de inicio de Python - binario compilado
ESTÁNDARAbierto · libre de regalías
RELACIONADO.do.md.hex.xsd
MAGIC BYTES · FIRMA DE ARCHIVO
OFFSET
0001
HEX
4D5A
ASCII
MZ
Un .pyd es literalmente una DLL de Windows, por lo que comienza con la cabecera MZ de DOS y contiene una firma «PE\0\0» (50 45 00 00) en el desplazamiento almacenado en e_lfanew (0x3C). Se diferencia de una DLL ordinaria solo en que exporta una función de inicialización de módulo de Python llamada PyInit_<modulename> (Python 3) o init<modulename> (Python 2). El flag de DLL (bit 0x2000) está establecido en el campo COFF Characteristics.

Programas que abren archivos PYD

Windows4 apps
Python (CPython) - the loader Código abierto No abres un .pyd directamente. Python lo importa: «import nombre_del_modulo». Si falla, reinstala el paquete propietario: «pip install --force-reinstall nombre_del_paquete».
pip (package manager) Código abierto Reinstala o repara el paquete al que pertenece el .pyd para tu versión exacta de Python: «pip install --upgrade --force-reinstall nombre_del_paquete». No muevas archivos .pyd a mano.
Dependencies (lucasg) Código abierto Diagnostica «DLL load failed»: abre el .pyd para ver qué DLL dependientes (por ejemplo, un runtime de VC++) faltan en el sistema.
Ghidra Código abierto Solo para desarrolladores o ingenieros inversos: importa el .pyd para un desensamblado o descompilación completa de su código nativo (es un binario PE).

Detalles técnicos

especificación profunda
Formato de contenedorWindows PE (Portable Executable) - el mismo contenedor binario que los archivos `.dll` y `.exe`
Magic bytes`MZ` (0x4D 0x5A) en el desplazamiento 0 (cabecera DOS); firma PE en el desplazamiento almacenado en 0x3C
Orden de bytesLittle-endian
Símbolo exportado clave`PyInit_<modulename>` (Python 3) o `init<modulename>` (Python 2) - el sistema de importación de CPython llama a esta función para inicializar el módulo
Etiqueta de nombre de archivo ABILas compilaciones con etiqueta de versión usan el patrón `nombre.cpXYZ-win_amd64.pyd`; por ejemplo, `cp312-win_amd64` está destinado a CPython 3.12 en Windows de 64 bits
PlataformaSolo Windows; el equivalente en Linux y macOS es un objeto compartido `.so`
Tipo MIME`application/octet-stream`; también registrado como `application/vnd.microsoft.portable-executable`
Tamaño de archivo típico20 KB - varios MB; las librerías nativas grandes (por ejemplo, componentes de NumPy o SciPy) pueden alcanzar decenas de MB
CompresiónNinguna - secciones PE en bruto, sin compresión integrada
Firma de códigoFirma digital Authenticode (PE) opcional; de lo contrario, la integridad no está verificada (código máquina nativo)
Compatibilidad del intérpreteDebe coincidir exactamente con la versión de CPython, la arquitectura (32/64 bits) y la etiqueta ABI; un archivo no coincidente genera un `ImportError` al importar
Herramientas de compilaciónNormalmente compilado desde código fuente C, C++ o Cython a través de `ext_modules` de setuptools, CMake/scikit-build o CFFI
LanzadoLate 1990s - Python on Windows has loaded extension modules from .pyd (a renamed .dll) since the Python 1.x/2.0 era
Última versiónTracks CPython; the per-version ABI tag (e.g. cp312-win_amd64) determines compatibility, current CPython 3.13 (2024)
Estándar abiertoSí · libre de regalías
Especificacióndocs.python.org

Conversiones de PYD

Preguntas y respuestas de la comunidad

preguntado por usuarios
Hacer una pregunta rápida
Obtenga ayuda de personas que trabajan con archivos PYD. Sea específico: incluya su sistema y la versión del software.
No se necesita cuenta · respuestas generalmente en un día

Aún no hay preguntas; sea el primero en preguntar sobre los archivos PYD.

Preguntas frecuentes

¿Qué es un archivo .pyd?
Un módulo de extensión de Python compilado para Windows; técnicamente una DLL que contiene código nativo (normalmente C/C++) que Python puede importar como un módulo ordinario. Es la forma en que paquetes rápidos como NumPy distribuyen sus partes compiladas.
¿Cómo abro un archivo .pyd?
No se abre directamente: es un binario compilado, no un script. Python lo carga automáticamente cuando importas un paquete que lo utiliza. Para inspeccionarlo, un desarrollador puede desensamblarlo con Ghidra; para repararlo, reinstala el paquete correspondiente con pip.
¿Cómo soluciono el error «ImportError: DLL load failed» para un .pyd?
Normalmente, el paquete fue compilado para una versión o arquitectura de Python diferente, falta un entorno de ejecución dependiente (instala Microsoft Visual C++ Redistributable) o está corrupto. Reinstálalo para tu versión exacta de Python: «pip install --force-reinstall nombre_del_paquete» y asegúrate de que la arquitectura de tu Python coincida con la del paquete.
¿Es un .pyd lo mismo que una DLL?
Sí, un .pyd utiliza el formato idéntico Windows PE/DLL. La única diferencia es que un .pyd exporta una función de inicialización de módulo de Python (PyInit_<nombre>), que es lo que permite a Python importarlo como un módulo.
¿Puedo convertir un .pyd a código fuente .py?
No. Un .pyd es código máquina compilado; el código fuente original de Python/C no se puede recuperar, solo desensamblar de forma aproximada. Obtén el código fuente del repositorio oficial del paquete en su lugar.
¿Es un archivo .pyd un virus?
No intrínsecamente; la mayoría de los archivos .pyd son partes legítimas de paquetes de Python instalados. Pero debido a que es código nativo que Python ejecuta sin un entorno aislado (sandbox), trata cualquier .pyd inesperado (especialmente uno descargado para «arreglar» un error) con sospecha; instala paquetes solo desde PyPI a través de pip y escanea archivos desconocidos.

Referencias

1Python docs - Building C and C++ Extensions on Windowsdocs.python.org
2Python docs - Extending Python with C or C++docs.python.org

Siga explorando

en toda la base de datos

Extensiones principales esta semana

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.BINCD/DVD Disc Image (BIN/CUE)
6.EXEWindows Executable (Portable Executable)
7.RPMSGRestricted Permission Message
8.NOMEDIAAndroid No-Media Marker File
9.MDMarkdown Document
10.TXTPlain Text File

Extensiones relacionadas

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Herramientas de archivo gratuitas

Un identificador de archivos y convertidor de imágenes en el navegador - todo se ejecuta en su dispositivo.

Abrir la caja de herramientas

Explorar extensiones de archivo A-Z