Selezionare un ambiente Python per un progetto in Visual Studio

Tutto il codice in un progetto Python viene eseguito nel contesto di un ambiente specifico. Questi ambienti possono essere un ambiente Python globale, un ambiente Anaconda, un ambiente virtuale o un ambiente conda. Visual Studio usa l'ambiente Python per il debug, l'importazione e il completamento dei membri e il controllo della sintassi. L'ambiente viene usato per tutte le attività che richiedono servizi di linguaggio specifici per la versione di Python e un set di pacchetti installati.

In Visual Studio è possibile creare più ambienti per un progetto e passare da un ambiente all'altro in base alle esigenze di sviluppo specifiche. Tutti i nuovi progetti Python sono inizialmente configurati per l'uso dell'ambiente globale predefinito. È possibile visualizzare gli ambienti per il progetto nel nodo Ambienti Python in Esplora soluzioni:

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

Prerequisiti

Cambiare l'ambiente del progetto corrente

In Visual Studio è possibile modificare l'ambiente attivo (corrente) per un progetto Python in Esplora soluzioni o dalla barra degli strumenti usando la funzionalità Aggiungi ambiente.

  1. Avviare il processo Aggiungi ambiente :

    • In Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo Ambienti Python per il progetto e scegliere Aggiungi ambiente.
    • In alternativa, sulla barra degli strumenti python selezionare Aggiungi ambiente dal menu a discesa Ambiente .

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

  2. Nella finestra di dialogo Aggiungi ambiente selezionare la scheda Ambiente esistente. Espandere l'elenco a discesa Ambiente e scegliere l'ambiente desiderato, quindi selezionare Aggiungi.

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

Nota

Se l'ambiente da usare non è elencato, potrebbe essere necessario identificare manualmente un ambiente esistente.

Usare gli ambienti virtuali

Un ambiente virtuale è una combinazione univoca di un interprete Python specifico e di un set specifico di librerie diverse da altri ambienti globali e conda. Un ambiente virtuale è specifico di un progetto e viene gestito in una sottocartella di progetto. La cartella contiene le librerie installate dell'ambiente insieme a un file pyvenv.cfg che specifica il percorso dell'interprete di base dell'ambiente nel file system. Un ambiente virtuale non contiene una copia dell'interprete, ma solo un collegamento.

Un vantaggio dell'uso di un ambiente virtuale è che quando si sviluppa il progetto nel tempo, l'ambiente virtuale riflette sempre le dipendenze esatte del progetto. Questo comportamento è diverso da un ambiente globale condiviso, che contiene un numero qualsiasi di librerie, indipendentemente dal fatto che vengano usate nel progetto o meno. Da un ambiente virtuale è possibile creare facilmente un file requirements.txt , che viene usato per reinstallare le dipendenze dei pacchetti in altri computer di sviluppo o produzione. Per altre informazioni, vedere Gestire i pacchetti necessari con requirements.txt.

Quando si apre in Visual Studio un progetto che contiene un file requirements.txt, Visual Studio offre automaticamente la possibilità di ricreare l'ambiente virtuale. Nei computer in cui Visual Studio non è installato, è possibile usare il pip install -r requirements.txt comando per ripristinare i pacchetti necessari.

Poiché un ambiente virtuale contiene un percorso hardcoded all'interprete Python di base ed è possibile ricreare l'ambiente usando il file requirements.txt , in genere si omette la sottocartella environment dal controllo del codice sorgente. Dopo aver aggiunto un ambiente virtuale al progetto, viene visualizzato nella finestra Ambienti Python. È quindi possibile attivarlo come qualsiasi altro ambiente e gestire i relativi pacchetti.

Creare un ambiente virtuale

È possibile creare un nuovo ambiente virtuale direttamente in Visual Studio, come indicato di seguito:

  1. Avviare il processo Aggiungi ambiente :

    • In Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo Ambienti Python per il progetto e scegliere Aggiungi ambiente.
    • In alternativa, sulla barra degli strumenti python selezionare Aggiungi ambiente dal menu a discesa Ambiente .
  2. Nella finestra di dialogo Aggiungi ambiente selezionare la scheda Ambiente virtuale:

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

  3. Configurare i campi obbligatori:

    Campo obbligatorio Descrizione
    Progetto Identificare il progetto in cui creare l'ambiente.
    Nome Specificare il nome per il nuovo ambiente virtuale.
    Interprete di base Specificare l'interprete del linguaggio di base per l'ambiente virtuale.
    Location Il sistema assegna il percorso predefinito per l'ambiente virtuale. Per modificare il percorso, selezionare il collegamento Cambia percorso ambiente virtuale, passare al percorso e scegliere Seleziona cartella.
  4. Configurare i campi facoltativi desiderati:

    Campo facoltativo Descrizione
    Installare i pacchetti dal file Specificare il percorso di un file requirements.txt per aggiungere pacchetti all'ambiente virtuale. Immettere il percorso e il nome del file o cercare (...) nel percorso e selezionare il file.
    Imposta come ambiente corrente Attivare il nuovo ambiente nel progetto selezionato dopo la creazione dell'ambiente.
    Impostare come ambiente predefinito per i nuovi progetti Impostare e attivare automaticamente l'ambiente in tutti i nuovi progetti creati in Visual Studio. Questa impostazione è disponibile anche tramite l'opzione Rendi l'ambiente predefinito per i nuovi progetti nella finestra Ambienti Python. Quando si usa questa opzione, posizionare l'ambiente virtuale in una posizione esterna a un progetto specifico.
    Visualizzazione nella finestra Ambienti Python Specificare se visualizzare la finestra Ambienti Python dopo aver creato il nuovo ambiente.
    Rendere disponibile questo ambiente a livello globale Specificare se l'ambiente virtuale deve fungere anche da ambiente globale. Quando si usa questa opzione, posizionare l'ambiente virtuale in una posizione esterna a un progetto specifico.
  5. Selezionare Crea per finalizzare l'ambiente virtuale.

Visual Studio visualizza un indicatore di stato mentre configura l'ambiente e scarica tutti i pacchetti necessari.

Al termine del processo, Visual Studio attiva il nuovo ambiente virtuale e lo aggiunge al nodo Ambienti Python in Esplora soluzioni. L'ambiente è disponibile anche nella finestra Ambienti Python per il progetto contenitore.

Attivare un ambiente

Seguire questa procedura per attivare un ambiente esistente per un progetto:

  1. In Esplora soluzioni espandere il nodo Ambienti Python per il progetto e individuare l'ambiente da usare.

  2. Fare clic con il pulsante destro del mouse sull'ambiente e scegliere Attiva ambiente.

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

    Se Visual Studio rileva un file requirements.txt in tale ambiente, richiede se installare tali pacchetti.

    Dopo l'attivazione dell'ambiente da parte di Visual Studio, il nome dell'ambiente attivo viene visualizzato in grassetto in Esplora soluzioni:

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

Rimuovere un ambiente virtuale

Seguire questa procedura per rimuovere un ambiente esistente per un progetto:

  1. In Esplora soluzioni, fare clic con il pulsante destro del mouse sull'ambiente virtuale e scegliere Rimuove.

  2. Visual Studio chiede se si vuole rimuovere o eliminare l'ambiente virtuale.

    • Selezionare Rimuovi per rendere l'ambiente non disponibile per il progetto, ma lasciarlo nel file system.
    • Selezionare Elimina per rimuovere l'ambiente dal progetto ed eliminarlo dal file system. Non ci sono effetti per l'interprete di base.

Visualizzare e gestire i pacchetti installati

In Esplora soluzioni è possibile visualizzare e gestire i pacchetti installati in un ambiente. Questi pacchetti possono essere importati e usati nel codice quando l'ambiente è attivo.

  • Per visualizzare rapidamente i pacchetti installati in un ambiente, espandere il nodo ambiente nel nodo Ambienti Python per il progetto in Esplora soluzioni:

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

  • Per installare nuovi pacchetti o gestire pacchetti esistenti, fare clic con il pulsante destro del mouse sul nodo ambiente e scegliere Gestisci pacchetti Python. È anche possibile usare il pulsante del pacchetto sulla barra degli strumenti python:

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

    Viene visualizzata la finestra Ambienti Python e vengono visualizzati i pacchetti installati per l'ambiente selezionato nella scheda Pacchetti (PyPI):

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

    In Visual Studio i pacchetti e le dipendenze per la maggior parte degli ambienti vengono scaricati dall'indice dei pacchetti Python (PyPI), in cui è anche possibile cercare i pacchetti disponibili. Le informazioni sull'installazione sono visualizzate nella barra di stato e nella finestra di output di Visual Studio.

  • Per disinstallare (rimuovere) un pacchetto, individuare il pacchetto nell'elenco e selezionare l'icona x a destra.

  • Per cercare versioni aggiornate di un pacchetto o di altri pacchetti, immettere un termine di ricerca (in genere un nome di pacchetto):

    Visual Studio visualizza i pacchetti corrispondenti. In questo esempio la ricerca è relativa ai pacchetti che corrispondono al termine blinker.

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

    Visual Studio visualizza un elenco di risultati corrispondenti come collegamenti di comando attivi.

    • Il primo comando aggiorna il pacchetto alla versione più recente e alle dipendenze correnti. Il comando è simile a Run command: pip install <package-name>. Se si seleziona Invio dopo il termine di ricerca, Visual Studio esegue automaticamente questo primo comando.

    • Gli altri collegamenti sono relativi ai comandi che installano un pacchetto, una versione o una dipendenza specifici, ad esempio Install blinker-async (0.0.3). Per eseguire uno di questi comandi, selezionare il collegamento.

Considerazioni sull'installazione dei pacchetti

Quando si lavora con i pacchetti in Visual Studio, tenere presenti le considerazioni seguenti:

  • Tenere presente che le voci visualizzate per i pacchetti potrebbero non essere accurate in termini di versione o disponibilità più recente. Le informazioni di installazione e disinstallazione visualizzate per un pacchetto potrebbero non essere affidabili o disponibili.

  • Visual Studio usa la funzionalità di gestione dei pacchetti pip, se disponibile, scaricandola e installandola quando necessario. Visual Studio può anche usare la funzionalità di gestione pacchetti easy_install. Vengono visualizzati anche i pacchetti installati tramite i pip comandi o easy_install dalla riga di comando.

  • Una situazione comune in cui pip non riesce a installare un pacchetto è quando il pacchetto include il codice sorgente per i componenti nativi nei file *.pyd . Senza la versione richiesta di Visual Studio installata, pip non può compilare questi componenti. Il messaggio di errore visualizzato in questa situazione è errore: Impossibile trovare vcvarsall.bat. Il easy_install comando è spesso in grado di scaricare file binari precompilati ed è possibile scaricare un compilatore adatto per le versioni precedenti di Python da https://python.en.uptodown.com/windows/versions. Per altre informazioni, vedere How to deal with the pain of "unable to find vcvarsallbat" (Come gestire il problema di "impossibile trovare vcvarsallbat" nel blog del team degli strumenti Python).

  • La gestione pacchetti Conda usa in genere https://repo.continuum.io/pkgs/ come canale predefinito, ma sono disponibili altri canali. Per altre informazioni, vedere Gestire i canali (docs.conda.io).

  • Visual Studio attualmente non supporta l'uso del conda comando per installare i pacchetti in un ambiente conda. Usare invece il conda comando dalla riga di comando.