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

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 cross-version 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)