Selección de un entorno de Python para un proyecto en Visual Studio

Todo el código de un proyecto Python se ejecuta dentro del contexto de un entorno específico. Estos entornos pueden ser un entorno global de Python, un entorno de Anaconda, un entorno virtual o un entorno de Conda. Visual Studio usa el entorno de Python para la depuración, la importación y la finalización de miembros, y la comprobación de sintaxis. El entorno se usa para cualquier tarea que requiera servicios de lenguaje específicos de la versión de Python y un conjunto de paquetes instalados.

En Visual Studio, puede crear varios entornos para un proyecto y cambiar entre ellos según sus necesidades de desarrollo específicas. Todos los nuevos proyectos de Python se configuran inicialmente para usar el entorno global predeterminado. Puede ver los entornos del proyecto en el nodo Entornos de Python en el Explorador de soluciones:

Screenshot that shows the global default Python environment for a project in Solution Explorer in Visual Studio.

Requisitos previos

Cambio del entorno del proyecto actual

En Visual Studio, puede cambiar el entorno activo (actual) de un proyecto de Python en el Explorador de soluciones o desde la barra de herramientas mediante la característica Agregar entorno.

  1. Inicie el proceso Agregar entorno:

    • En el Explorador de soluciones, haga clic con el botón derecho en el nodo Entornos de Python de su proyecto y seleccione Agregar entorno.
    • O bien, en la barra de herramientas de Python, seleccione Agregar entorno en el menú desplegable Entorno.

    Screenshot that shows the two options to access the Add Environments feature in Visual Studio.

  2. En el cuadro de diálogo Agregar entorno, seleccione la pestaña Entorno existente. Expanda la lista desplegable Entorno, elija el entorno que desee y, a continuación, seleccione Agregar.

    Screenshot that shows how to select a project environment in the Add Environments dialog in Visual Studio.

Nota:

Si el entorno que desea usar no aparece en la lista, es posible que tenga que identificar manualmente un entorno existente.

Uso de entornos virtuales

Un entorno virtual es una combinación única de un intérprete de Python específico y un conjunto de bibliotecas específico distinto de otros entornos globales y de conda. Un entorno virtual es específico a un proyecto y se mantiene en una subcarpeta de proyecto. La carpeta contiene las bibliotecas instaladas del entorno junto con un archivo pyvenv.cfg que especifica la ruta de acceso al intérprete base de ese entorno en otra parte del sistema de archivos. (Un entorno virtual no contiene una copia del intérprete, solo un vínculo a él).

Una ventaja de usar un entorno virtual es que, a medida que desarrolla el proyecto a lo largo del tiempo, el entorno virtual siempre refleja las dependencias exactas del proyecto. Este comportamiento es diferente de un entorno global compartido, que contiene cualquier número de bibliotecas, tanto si se usan en el proyecto como si no. Desde un entorno virtual puede crear fácilmente un archivo requirements.txt, que se usará para volver a instalar las dependencias del paquete en otros equipos de desarrollo o producción. Para más información, consulte Administración de los paquetes necesarios con requirements.txt.

Cuando abre un proyecto en Visual Studio que contiene un archivo requirements.txt, Visual Studio automáticamente le ofrece la opción de volver a crear el entorno virtual. En los equipos donde no está instalado Visual Studio, puede usar el comando pip install -r requirements.txt para restaurar los paquetes necesarios.

Dado que un entorno virtual contiene una ruta de acceso codificada de forma rígida al intérprete base de Python y que puede volver a crear el entorno mediante el archivo requirements.txt, normalmente se omite la subcarpeta del entorno del control de código fuente. Después de agregar un entorno virtual al proyecto, aparece en la ventana Entornos de Python. Puede activarlo después al igual que cualquier otro entorno y administrar sus paquetes.

Creación de un entorno virtual

Puede crear un entorno virtual directamente en Visual Studio como se indica a continuación:

  1. Inicie el proceso Agregar entorno:

    • En el Explorador de soluciones, haga clic con el botón derecho en el nodo Entornos de Python de su proyecto y seleccione Agregar entorno.
    • O bien, en la barra de herramientas de Python, seleccione Agregar entorno en el menú desplegable Entorno.
  2. En el cuadro de diálogo Agregar entorno, seleccione la pestaña Entorno virtual:

    Screenshot of the Virtual environment tab of the Add Environment dialog box in Visual Studio.

  3. Configure los campos obligatorios:

    Campo obligatorio Descripción
    Proyecto Identifique el proyecto en el que se va a crear el entorno.
    Nombre Proporcione el nombre del nuevo entorno virtual.
    Intérprete de base Especifique el intérprete de lenguaje base para el entorno virtual.
    Ubicación El sistema asigna la ubicación predeterminada para el entorno virtual. Para cambiar la ubicación, seleccione el vínculo Cambiar ubicación del entorno virtual, vaya a la ubicación y elija Seleccionar carpeta.
  4. Configure los campos opcionales deseados:

    Campo opcional Descripción
    Instalación de paquetes desde el archivo Especifique la ruta de acceso a un archivo requirements.txt para agregar paquetes al entorno virtual. Escriba la ubicación y el nombre del archivo o busque (...) en la ubicación y seleccione el archivo.
    Establecer como entorno actual Active el entorno nuevo en el proyecto seleccionado una vez que se crea el entorno.
    Establecer como entorno predeterminado para los nuevos proyectos Establezca y active automáticamente el entorno en los nuevos proyectos creados en Visual Studio. Esta configuración también está disponible mediante la opción Convertir este entorno en el predeterminado para nuevos proyectos en la ventana Entornos de Python. Si utiliza esta opción, coloque el entorno virtual en una ubicación fuera de un proyecto específico.
    Ver en la ventana de entornos de Python Especifique si desea mostrar la ventana Entornos de Python después de crear el entorno nuevo.
    Poner el entorno a disposición globalmente Especifique si el entorno virtual también debe actuar como entorno global. Si utiliza esta opción, coloque el entorno virtual en una ubicación fuera de un proyecto específico.
  5. Seleccione Crear para finalizar el entorno virtual.

Visual Studio muestra una barra de progreso mientras se configura el entorno y descarga los paquetes necesarios.

Una vez completado el proceso, Visual Studio activa el nuevo entorno virtual y lo agrega al nodo Entornos de Python en el Explorador de soluciones. El entorno también está disponible en la ventana Entornos de Python para el proyecto contenedor.

Activación de un entorno

Siga estos pasos para activar un entorno existente para un proyecto:

  1. En el Explorador de soluciones, expanda el nodo Entornos de Python del proyecto y busque el entorno que desea usar.

  2. Haga clic con el botón derecho en el entorno y seleccione Activar entorno.

    Screenshot that shows how to activate a project environment in Visual Studio.

    Si Visual Studio detecta un archivo requirements.txt en ese entorno, preguntará si instalar esos paquetes.

    Una vez que Visual Studio activa el entorno, el nombre del entorno activo se muestra en una fuente en negrita en el Explorador de soluciones:

    Screenshot that shows how Visual Studio shows the name of the active environment in a bold font in Solution Explorer.

Eliminación de un entorno virtual

Siga estos pasos para quitar un entorno existente para un proyecto:

  1. En el Explorador de soluciones, haga clic con el botón derecho en el entorno virtual y seleccione Quitar.

  2. Visual Studio pregunta si desea quitar o eliminar el entorno virtual.

    • Seleccione Quitar para que el entorno deje de estar disponible para el proyecto pero sigue en el sistema de archivos.
    • Seleccione Eliminar para quitar el entorno del proyecto y eliminarlo del sistema de archivos. El intérprete básico no se ve afectado.

Visualización y administración de paquetes instalados

el En Explorador de soluciones, puede ver y administrar los paquetes instalados en un entorno. Estos paquetes se pueden importar y usar en el código cuando el entorno está activo.

  • Para ver rápidamente los paquetes instalados en un entorno, expanda el nodo del entorno en el nodo Entornos de Python del proyecto en el Explorador de soluciones:

    Screenshot that shows Python packages for an environment in Solution Explorer in Visual Studio.

  • Para instalar nuevos paquetes o administrar paquetes existentes, haga clic con el botón derecho en el nodo de entorno y seleccione Administrar paquetes de Python. También puede usar el botón de paquete en la barra de herramientas de Python:

    Screenshot that shows how to access the Manage Python packages option for an environment in Solution Explorer.

    Se abre la ventana Entornos de Python y se muestran los paquetes instalados para el entorno seleccionado en la pestaña Paquetes (PyPI):

    Screenshot that shows the current packages for the selected environment in the Python Environments window.

    En Visual Studio, los paquetes y las dependencias para la mayoría de los entornos se descargan desde el Índice de paquetes de Python (PyPI), donde también puede buscar los paquetes disponibles. La barra de estado y la ventana de salida de Visual Studio muestran información sobre la instalación.

  • Para desinstalar (quitar) un paquete, busque el paquete en la lista y seleccione el icono de x situado a la derecha.

  • Para buscar versiones actualizadas de un paquete u otros paquetes, escriba un término de búsqueda (normalmente un nombre de paquete):

    Visual Studio muestra los paquetes coincidentes. En este ejemplo, la búsqueda es para paquetes que coinciden con el término blinker.

    Screenshot that shows how Visual Studio shows how to search for matching packages in the Python Environments window.

    Visual Studio muestra una lista de resultados coincidentes como vínculos de comandos activos.

    • El primer comando actualiza el paquete a la versión más reciente y las dependencias actuales. El comando es similar a Run command: pip install <package-name>. Si selecciona Entrar después del término de búsqueda, Visual Studio ejecuta automáticamente este primer comando.

    • Los otros vínculos son para los comandos que instalan un paquete, una versión o una dependencia específicos, como Install blinker-async (0.0.3). Para ejecutar uno de estos comandos, seleccione el vínculo.

Consideraciones sobre la instalación de paquetes

Al trabajar con paquetes en Visual Studio, tenga en cuenta las consideraciones siguientes:

  • Tenga en cuenta que las entradas mostradas para los paquetes podrían no ser precisas en términos de la versión o disponibilidad más actual. Es posible que la información de instalación y desinstalación que se muestra para un paquete no sea fiable o no esté disponible.

  • Visual Studio usa el administrador de paquetes de pip si está disponible y lo descarga e instala cuando sea necesario. Visual Studio también puede usar el administrador de paquetes de easy_install. También se muestran los paquetes instalados con los comandos pip o easy_install desde la línea de comandos.

  • Una situación común donde pip no puede instalar un paquete es cuando este incluye código fuente para componentes nativos en archivos *.pyd. Sin la versión necesaria de Visual Studio instalada, pip no puede compilar estos componentes. El mensaje de error que aparece en esta situación es error: Unable to find vcvarsall.bat (Error: no se encuentra vcvarsall.bat). El comando easy_install suele poder descargar los binarios previamente compilados, y el usuario puede descargar un compilador adecuado para versiones anteriores de Python desde https://python.en.uptodown.com/windows/versions. Para obtener más información, consulte Cómo afrontar la dificultad de "no poder encontrar vcvarsallbat" en el blog del equipo de herramientas de Python.

  • Por lo general, el administrador de paquetes de Conda usa https://repo.continuum.io/pkgs/ como el canal predeterminado, pero hay otros canales disponibles. Para más información, consulte Administración de canales (docs.conda.io).

  • Actualmente, Visual Studio no admite el uso del comando conda para instalar paquetes en un entorno de Conda. En su lugar, utilice el comando conda desde la línea de comandos.