# `distutils` — Creación e instalación de módulos Python

`distutils` está en desuso con la eliminación planificada para Python 3.12. Consulte Novedades para más información.

El paquete `distutils` proporciona soporte para crear e instalar módulos adicionales en una instalación de Python. Los nuevos módulos pueden ser 100% Python puro, o pueden ser módulos de extensión escritos en C, o pueden ser colecciones de paquetes de Python que incluyen módulos programados en Python y C.

La mayoría de los usuarios de Python no querrán utilizar este módulo directamente, sino que usarán las herramientas de versión cruzada mantenidas por la Python Packaging Authority. En particular, setuptools es una alternativa mejorada a `distutils` que proporciona:

- soporte para declarar dependencias del proyecto

- mecanismos adicionales para configurar cuáles archivos incluir en lanzamientos de código fuente (incluyendo plugins para la integración con sistemas de control de versiones)

- la capacidad de declarar «puntos de entrada» del proyecto, los cuales pueden ser utilizados como base para los sistemas de plugins de aplicaciones

- la capacidad de generar, automáticamente, ejecutables de línea de comandos de Windows en el momento de la instalación, en lugar de tener que compilarlos previamente

- comportamiento consistente en todas las versiones de Python soportadas

El instalador pip recomendado ejecuta todos los scripts `setup.py` con `setuptools`, incluso si el propio script sólo importa `distutils`. Consulte la Python Packaging User Guide para más información.

Para beneficio de los autores de herramientas de empaquetado y los usuarios que buscan una comprensión más profunda de los detalles del sistema actual de empaquetado y distribución, la documentación de usuario heredada basada en `distutils` y la referencia de la API permanecen disponibles:

- Instalación de módulos de Python (versión antigua)

- Distribución de módulos de Python (versión heredada)