Creación y administración de entornos de Python en Visual Studio

Un entorno de Python es un contexto en el que se ejecuta el código de Python e incluye los entornos globales, virtuales y de Conda. Un entorno consta de un intérprete, una biblioteca (normalmente la biblioteca estándar de Python) y un conjunto de paquetes instalados. Todos estos componentes determinan las construcciones de lenguaje y sintaxis válidas, la función de sistema operativo a la que puede acceder y los paquetes que puede usar.

En Visual Studio en Windows, se usa la ventana Entornos de Python, como se explica en este artículo, para administrar entornos y seleccionar uno como valor predeterminado para los proyectos nuevos. En los siguientes artículos se indican otros aspectos de los entornos:

  • En cualquier proyecto puede seleccionar un entorno concreto en lugar de usar el predeterminado.

  • Para obtener detalles sobre la creación y el empleo de entornos virtuales para proyectos de Python, vea Uso de entornos virtuales.

  • Si quiere instalar paquetes en un entorno, vea la referencia de la pestaña Paquetes.

  • Para instalar otro intérprete de Python, vea Instalación de intérpretes de Python. En general, si descarga y ejecuta el instalador de una distribución principal de Python, Visual Studio detecta esa nueva instalación y el entorno aparece en la ventana Entornos de Python y se puede seleccionar para los proyectos.

Nota:

Los entornos de código de Python abiertos como una carpeta se pueden administrar seleccionando Archivo>Abrir>Carpeta. La barra de herramientas de Python permite alternar entre todos los entornos detectados y, también, agregar un entorno nuevo. La información del entorno se almacena en el archivo PythonSettings.json, en la carpeta .vs del área de trabajo.

Requisitos previos

  • Una carga de trabajo de Python instalada.

Si no está familiarizado con Python en Visual Studio, vea los siguientes artículos para obtener conocimientos generales:

La ventana Entornos de Python

Los entornos que Visual Studio conoce aparecen en la ventana Entornos de Python. Para abrir la ventana, use uno de los métodos siguientes:

  • Seleccione Ver>Oras ventanas>Entornos de Python.
  • Haga clic con el botón derecho en el nodo Entornos de Python de un proyecto en el Explorador de soluciones y seleccione View All Python Environments (Ver todos los entornos de Python).

Captura de pantalla del comando Ver todos los entornos de Python del Explorador de soluciones para Visual Studio 2019.

Captura de pantalla del comando Ver todos los entornos de Python del Explorador de soluciones para Visual Studio 2022.

La ventana Entornos de Python aparece junto al Explorador de soluciones en Visual Studio:

Captura de pantalla de la ventana Entornos de Python en Visual Studio 2019.

Captura de pantalla de la ventana Entornos de Python en Visual Studio 2022.

Visual Studio busca entornos globales instalados mediante el Registro (tras PEP 514), junto con entornos virtuales y entornos de Conda (vea Tipos de entornos). Si no ve un entorno previsto en la lista, vea Identificación manual de un entorno existente.

Al seleccionar un entorno de la lista, Visual Studio muestra varias propiedades y comandos para ese entorno en la pestaña Información general de la ventana Entornos de Python, como la ubicación del intérprete. Los comandos en la parte inferior de la pestaña Información general abren un símbolo del sistema con el intérprete en ejecución. Para obtener más información, vea Referencia de pestañas de la ventana Entorno de Python: Información general.

Use la lista desplegable situada debajo de la lista de entornos para cambiar de pestañas, como Paquetes e IntelliSense. Estas pestañas también se describen en la Referencia de pestañas de la ventana Entornos de Python.

La selección de un entorno no cambia su relación con los proyectos. El entorno predeterminado, que aparece en negrita en la lista, es el que usa Visual Studio para los proyectos nuevos. Para usar otro entorno con los proyectos nuevos, use el comando Convertir este entorno en el predeterminado para nuevos proyectos. En el contexto de un proyecto siempre puede seleccionar un entorno concreto. Para más información, vea Selección de un entorno para un proyecto.

A la derecha de cada entorno de la lista figura un control que abre una ventana interactiva para ese entorno. (En Visual Studio 2017 15.5 y versiones anteriores, aparece otro control que actualiza la base de datos de IntelliSense para ese entorno. Para obtener más información sobre la base de datos, consulte Referencia de pestañas de la ventana Entornos de Python.

Sugerencia

Si expande la ventana Entornos de Python con un ancho suficiente, obtendrá una vista más completa de los entornos que resulta más cómoda para trabajar.

Captura de pantalla de la vista expandida de la ventana Entornos de Python en Visual Studio 2019.

Sugerencia

Si expande la ventana Entornos de Python con un ancho suficiente, obtendrá una vista más completa de los entornos que resulta más cómoda para trabajar.

Captura de pantalla de la vista expandida de la ventana Entornos de Python en Visual Studio 2022.

Nota:

Aunque Visual Studio respeta la opción de paquetes de sitio de sistema, no ofrece una forma de cambiarla desde dentro de Visual Studio.

¿Qué ocurre si no aparece ningún entorno?

Si no ve ningún entorno en la ventana Entornos de Python, significa que Visual Studio no pudo detectar las instalaciones de Python en ubicaciones estándar. Podría haber instalado Visual Studio 2017 o una versión posterior, pero también que haya borrado todas las opciones de intérprete en las opciones del instalador de la carga de trabajo de Python. Del mismo modo, es posible que haya instalado Visual Studio 2015 o una versión anterior, pero no haya instalado un intérprete manualmente. Para obtener más información, consulte Instalación de intérpretes de Python.

Si sabe que tiene un intérprete de Python en el equipo pero Visual Studio (cualquier versión) no lo detectó, use el comando + Personalizado para especificar manualmente la ubicación del intérprete. Para obtener más información, consulte cómo identificar manualmente un entorno existente.

Tipos de entornos

Visual Studio puede trabajar con entornos globales, virtuales y de Conda.

Entornos globales

Cada instalación de Python mantiene su propio entorno global. Por ejemplo, Python 2.7, Python 3.6, Python 3.7, Anaconda 4.4.0, etc. Para obtener más información, consulte Instalación de intérpretes de Python.

Cada entorno está formado por el intérprete de Python determinado, su biblioteca estándar y un conjunto de paquetes instalados previamente. También contiene cualquier otro paquete que instale mientras se activa el entorno. Al instalar un paquete en un entorno global, este pasa a estar disponible para todos los proyectos que usan ese entorno. Si el entorno se encuentra en un área protegida del sistema de archivos (dentro de c:\archivos de programa, por ejemplo), la instalación de paquetes requiere privilegios de administrador.

Los entornos globales están disponibles para todos los proyectos del equipo. En Visual Studio, debe seleccionar un entorno global como predeterminado, que será el que se utilice para todos los proyectos (a menos que elija específicamente otro diferente para un proyecto). Para más información, vea Selección de un entorno para un proyecto.

Entornos virtuales

Trabajar en un entorno global es una manera fácil de empezar a trabajar. Con el tiempo, los entornos se pueden llenar de muchos paquetes diferentes instalados para otros proyectos. Este desorden puede dificultar probar de forma exhaustiva la aplicación en un conjunto específico de paquetes con versiones conocidas. Pero este tipo de entorno es el que se esperaría configurar en un servidor de compilación o en un servidor web. También pueden producirse conflictos si dos proyectos necesitan paquetes no compatibles o versiones diferentes del mismo paquete.

Por estos motivos, los desarrolladores suelen crear un entorno virtual para un proyecto. Un entorno virtual es una subcarpeta de un proyecto que contiene una copia de un intérprete determinado. Si activa el entorno virtual, los paquetes que instale se instalan solo en la subcarpeta de ese entorno. Al ejecutar un programa de Python en el entorno virtual, puede estar seguro de que el programa se ejecuta solo en esos paquetes específicos.

Visual Studio permite crear directamente un entorno virtual para un proyecto. Si abre un proyecto que contiene un archivo requirements.txt, Visual Studio le pedirá automáticamente que cree un entorno virtual e instale esas dependencias. Verá el mismo comportamiento al crear un proyecto a partir de una plantilla que incluya el archivo requirements.txt.

En un proyecto abierto puede crear un nuevo entorno virtual en cualquier momento. En el Explorador de soluciones, expanda el nodo del proyecto, haga clic con el botón derecho en Entornos de Python y elija Agregar entorno. En Agregar entorno, elija Entorno virtual. Para obtener más información, vea Creación de un entorno virtual.

Visual Studio además proporciona un comando para generar un archivo requirements.txt desde un entorno virtual, con lo que resulta sencillo volver a crear el entorno en otros equipos. Para obtener más información, vea Use virtual environments (Usar entornos virtuales).

Entornos de coda

Puede crear un entorno de Conda con la herramienta conda o con la administración de Conda integrada en Visual Studio 2017, versión 15.7 y versiones posteriores. Un entorno de Conda requiere Anaconda o Miniconda. Estas plataformas están disponibles a través del Instalador de Visual Studio. Para obtener más información, consulte Instalación de la compatibilidad con Python en Visual Studio.

  1. En la ventana Entornos de Python (o desde la barra de herramientas de Python), seleccione Agregar entorno para abrir el cuadro de diálogo Agregar entorno.

  2. En el cuadro de diálogo Agregar entorno, seleccione la pestaña Entorno de Conda:

    Captura de pantalla de la pestaña Entorno de Conda en el cuadro de diálogo Agregar entorno en Visual Studio 2022.

  3. Configure los campos siguientes:

    Campo Descripción
    Proyecto Identifica el proyecto en el que se va a crear el entorno.
    Nombre Proporciona el nombre del entorno de Conda.
    Agregar paquetes desde Especifica cómo agregar paquetes al entorno de Conda.
    - Archivo de entorno: seleccione esta opción si tiene un archivo environment.yml que describa las dependencias. Escriba el nombre del archivo o busque (...) en la ubicación del archivo y seleccione el archivo.
    - Uno o varios nombres de paquete Anaconda: seleccione esta opción si desea enumerar uno o varios paquetes de Python o versiones de Python.

    La lista de paquetes indica a Conda que cree un entorno de Python. Para instalar la versión más reciente de Python, utilice el comando python. Para instalar una versión específica, use el comando python=,major>.<minor> como en python=3.7. También puede usar el botón del paquete para seleccionar las versiones de Python y los paquetes comunes en una serie de menús.
    Establecer como entorno actual Activa el entorno nuevo en el proyecto seleccionado una vez que se crea el entorno.
    Establecer como entorno predeterminado para los nuevos proyectos Establecer y activa automáticamente el entorno de Conda en los nuevos proyectos creados en Visual Studio. Esta opción es igual que usar el comando Convertir este entorno en el predeterminado para nuevos proyectos en la ventana Entornos de Python.
    Ver en la ventana de entornos de Python Especifica si mostrar la ventana Entornos de Python después de crear el entorno.

    Importante

    Al crear un entorno de Conda, asegúrese de especificar al menos una versión de Python o un paquete de Python para asegurarse de que el entorno contiene un entorno de ejecución de Python. Puede usar un archivo environments.yml o la lista de paquetes. Si no proporciona esta especificación, Visual Studio omite el entorno. El entorno no aparece en ninguna parte de la ventana Entornos de Python, no está establecido como entorno actual de un proyecto y no está disponible como entorno global.

    Si crea un entorno de Conda sin una versión de Python, use el comando conda info para ver las ubicaciones de las carpetas del entorno de Conda. A continuación, puede quitar manualmente la subcarpeta del entorno de esa ubicación.

  4. Seleccione Crear.

    Puede supervisar la creación del entorno de Conda en la ventana Salida. Una vez completada la creación, la salida muestra algunas instrucciones de interfaz de línea de comandos (CLI), como activate env:

    Captura de pantalla donde se ve la creación correcta de un entorno de Conda en Visual Studio.

  5. En Visual Studio, puede activar un entorno de Conda para el proyecto de la misma manera que lo haría con cualquier otro entorno. Para más información, vea Selección de un entorno para un proyecto.

  6. Para instalar más paquetes en el entorno, utilice la pestaña Paquetes de la ventana Entornos de Python.

Nota:

Para obtener los mejores resultados con entornos de Conda, use Conda 4.4.8 o posterior. Tenga en cuenta que las versiones de Conda son diferentes de las versiones de Anaconda. Puede instalar las versiones adecuadas de Miniconda (Visual Studio 2019 y Visual Studio 2022) y Anaconda (Visual Studio 2017) mediante el Instalador de Visual Studio.

Para ver la versión de Conda, donde se almacenan los entornos de Conda, y otra información, ejecute el comando conda info en un símbolo del sistema de Anaconda (es decir, un símbolo del sistema donde Anaconda esté en la ruta de acceso):

conda info

Las carpetas de entorno de Conda tienen el siguiente aspecto:

       envs directories : C:\Users\user\.conda\envs
                          c:\anaconda3\envs
                          C:\Users\user\AppData\Local\conda\conda\envs

Debido a que los entornos de Conda no se almacenan con un proyecto, actúan de forma similar a los entornos globales. Por ejemplo, al instalar un paquete nuevo en un entorno de conda, ese paquete pasa a estar disponible para todos los proyectos que usan ese entorno.

Para Visual Studio 2017, versión 15.6 y anteriores, puede usar entornos de Conda apuntando a ellos de forma manual tal como se describe en Identificación manual de un entorno existente.

Visual Studio 2017, versión 15.7 y posteriores, detecta automáticamente los entornos de Conda y los muestra en la ventana Entornos de Python, tal y como se describe en la sección siguiente.

Identificación manual de un entorno existente

Siga estos pasos para identificar un entorno instalado en una ubicación no estándar.

  1. En la ventana Entornos de Python (o desde la barra de herramientas de Python), seleccione Agregar entorno para abrir el cuadro de diálogo Agregar entorno.

  2. En el cuadro de diálogo Agregar entorno, en la pestaña Entorno existente, establezca el campo Entorno en <Personalizado>:

    Captura de pantalla del cuadro de diálogo Agregar entorno de la pestaña Entorno existente en Visual Studio, donde se indica cómo definir el campo Entorno como Personalizado.

    Después de seleccionar el valor <Personalizado>, se agregan más campos al cuadro de diálogo.

  3. Establezca el campo Ruta de acceso del prefijo en la ruta del intérprete. Para establecer el campo, vaya (...) a la ubicación de la ruta de acceso.

    Captura de pantalla que muestra cómo especificar detalles para un entorno personalizado en el cuadro de diálogo Agregar entorno en Visual Studio.

  4. Después de seleccionar la ruta de acceso, se rellenan los campos restantes. Revise los valores y modifíquelos según sea necesario. Cuando esté listo, seleccione Agregar.

También puede revisar y modificar los detalles del entorno en cualquier momento en la ventana Entornos de Python.

  1. En la ventana Entornos de Python, seleccione el entorno y luego, la pestaña Configurar.

  2. Después de hacer cambios, seleccione el comando Aplicar.

También puede quitar el entorno con el comando Quitar . Para obtener más información, consulte la pestaña Configurar. Este comando no está disponible para entornos detectados automáticamente.

Corrección o eliminación de entornos no válidos

Si Visual Studio encuentra entradas del Registro de un entorno, pero la ruta de acceso para el intérprete no es válida, la ventana Entornos de Python mostrará el nombre del entorno con una fuente tachada, como se muestra en la imagen siguiente:

Captura de pantalla de la ventana Entornos de Python en la que se muestra un entorno no válido en Visual Studio.

Para corregir un entorno que quiera mantener, en primer lugar intente usar el proceso Reparar del instalador del entorno. La mayoría de los instaladores incluyen una opción de reparación.

Modificación del registro para corregir un entorno

Si el entorno de Python no tiene una opción de reparación o quiere quitar un entorno no válido, siga estos pasos para modificar el registro directamente. Visual Studio actualiza automáticamente la ventana Entornos de Python al realizar cambios en el registro.

  1. Ejecute el archivo ejecutable regedit.exe para abrir el editor del Registro.

  2. Vaya a la carpeta de entorno que corresponde a la configuración:

    Versión de Python Carpeta
    Versión de 64 bits HKEY_LOCAL_MACHINE\SOFTWARE\Python o HKEY_CURRENT_USER\Software\Python
    Versión de 32 bits HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Python
    IronPython IronPython
  3. Expanda la estructura del nodo de distribución y versión del entorno:

    Distribución Nodo
    CPython PythonCore><Nodo de la versión>
    Anaconda ContinuumAnalytics><Nodo de la versión>
    IronPython <Nodo de la versión>
  4. Inspeccione los valores del nodo InstallPath:

    Captura de pantalla de las entradas del Registro de una instalación típica de CPython en el editor del Registro.

    • Si el entorno todavía figura en el equipo, cambie el valor de la entrada ExecutablePath a la ubicación adecuada. Corrija también los valores de las entradas (Predeterminadas) y WindowedExecutablePath según sea necesario.
    • Si el entorno ya no figura en el equipo y quiere eliminarlo de la ventana Entornos de Python, elimine el nodo primario del número de versión del nodo de InstallPath. Puede ver un ejemplo de este nodo en la imagen anterior. En el ejemplo, este nodo es 3.6.

    Precaución

    La configuración no válida en la clave HKEY_CURRENT_USER\SOFTWARE\Python reemplaza la configuración en la clave HKEY_LOCAL_MACHINE\SOFTWARE\Python.

Eliminación o retirada de un entorno de Python

Para quitar un proyecto de Python, vaya al entorno de Python en el Explorador de soluciones. Haga clic con el botón derecho en el entorno de Python que desee quitar y seleccione Quitar.

Captura de pantalla donde se indica cómo eliminar un entorno de Python en Visual Studio.

Si desea conservar el entorno de Python pero eliminarlo del proyecto, seleccione Quitar. Si desea eliminar el entorno de forma permanente, seleccione Eliminar.

Captura de pantalla donde aparece cómo eliminar o quitar un entorno de Python en Visual Studio.