Comment puis-je activer un virtualenv à l'intérieur de PyCharm du terminal?
J'ai mis en place PyCharm, créé mon virtualenv (soit par le biais du virtuel env commande, ou directement dans PyCharm) et activé cet environnement que mon Interprète. Tout fonctionne très bien.
Cependant, si j'ouvre un terminal en utilisant des "Outils, Ouvrir un Terminal", l'invite du shell fourni est pas virtuelle env; j'utilise encore source ~/envs/someenv/bin/activate
dans le Terminal pour l'activer.
Une autre méthode consiste à activer l'environnement dans un shell, et exécuter PyCharm de l'environnement. C'est "plausible", mais assez laid, et signifie que j'ai des problèmes majeurs si je passe des environnements ou des projets de PyCharm: je suis maintenant à l'aide de la totalement mauvais environnement.
Est-il un autre, beaucoup plus simple façon d'avoir des "Outils, Ouvrir un Terminal" activer automatiquement l'environnement virtuel?
Vous devez vous connecter pour publier un commentaire.
Edit:
Selon https://www.jetbrains.com/pycharm/whatsnew/#v2016-3-venv-in-terminal, PyCharm 2016.3 (sorti en Novembre 2016) a virutalenv de soutien pour les terminaux de la zone
Vieille Méthode:
Créer un fichier
.pycharmrc
dans votre dossier personnel avec le contenu suivantÀ l'aide de votre virtualenv chemin d'accès que le dernier paramètre.
Alors shell Préférences->Paramètres du Projet->Shell chemin à
~/pycharmenv/bin/terminalactivate
sonne comme une bonne option..pycharmrc
dans le projet de dossier d'accueil, afin que je puisse avoir un fichier différent pour chaque projet. Dans une configuré correctement projet, il n'est pas nécessaire de fournir le chemin d'accès absolu à la.pycharmrc
fichier.-i
option après--rcfile
pour activer le mode interactif ou votre~/.pycharmrc
ne sera pas exécuté. Voici ce queman bash
dit à propos de--rcfile
option:Execute commands from file instead of the standard personal initialization file ~/.bashrc if the shell is interactive
/bin/bash --rcfile ~/.pycharmrc
ou/bin/bash --rcfile -i ~/.pycharmrc
pas de travail pour moi @renskiy/bin/bash --rcfile ~/.pycharmrc -i
bash: /Users/username/pycharmvenv/bin/activate: No such file or directory
-- Pycharm version 2016.3.2source `pwd`/.env/bin/activate
à la place de la deuxième ligne, Il m'a fait de pouvoir utiliser les mêmesrc
fichier pour d'autres projets.bash script.sh
dans PyCharm terminal. Mais je ne suis pas en mesure de faire le virtualenv efficace pour le cas lorsque je clic droit sur le fichier bash et sélectionnezRun script.sh
. Quand je lance cette façon, il ne respecte pas le virtualenv. Je peux ajouter virtuel env Python tapez exécuter les configurations, mais impossible de trouver comment mettre en virtuel env pour Bash type de configuration d'exécution. L'exécution descript.sh
comme avant le lancement de l'activité à l'intérieur d'un environnement virtuel jeu de Python exécuter la configuration ne fonctionne pas non plus. Aiderscript.sh
lui-même en ajoutant ces lignes:source `which virtualenvwrapper.sh` workon <venvname>
Pour les utilisateurs de Windows lors de l'utilisation de PyCharm et un environnement virtuel sous Windows, vous pouvez utiliser le paramètre /k pour cmd.exe pour définir l'environnement virtuel automatiquement.
Accédez à Paramètres, Terminal, le shell par Défaut et ajouter
/K <path-to-your-activate.bat>
.Je n'ai pas la réputation de commentaire sur la première réponse, de sorte que l'affichage de cette version corrigée. Cela nous fait vraiment gagner BEAUCOUP de temps.
Mise à jour:
Remarque: Pycharm prend désormais en charge les environnements virtuels directement et il semble bien fonctionner pour moi - alors ma solution de contournement n'a plus besoin.
Pour les utilisateurs de Windows: lors de l'utilisation de PyCharm avec un environnement virtuel, vous pouvez utiliser le
/K
paramètrecmd.exe
pour définir l'environnement virtuel automatiquement.PyCharm 3 ou 4:
Settings
,Terminal
,Default shell
et ajouter/K <path-to-your-activate.bat>
.PyCharm 5:
Settings
,Tools
,Terminal
, et ajouter/K <path-to-your-activate.bat>
àShell path
.PyCharm 2016.1 ou 2016.2:
Settings
,Tools
,Terminal
, et ajouter""/K <path-to-your-activate.bat>""
àShell path
et ajouter (n'oubliez pas les guillemets). Également ajouter des guillemets autour de cmd.exe, ce qui entraîne:"cmd.exe" /k ""C:\mypath\my-venv\Scripts\activate.bat""
Basée sur les réponses de Pierre et d'expérimentation, j'ai trouvé une bonne "solution générale", ce qui résout le suivant:
Chute de ce script dans un répertoire bin quelque part. E. g. ~/bin/pycharmactivate
Puis définissez PyCharm Coquille chemin d'accès:
if [ -r "/etc/profile" ] ; then . /etc/profile ; fi if [ -r "~/.bash_profile" ] ; then . ~/.bash_profile elif [ -r "~/.bash_login" ] ; then . ~/.bash_login elif [ -r "~/.profile" ] ; then . ~/.profile fi source ~/learnp/project1/venv/bin/activate
Merci Chris, votre script travaillé pour certains projets, mais pas sur ma machine. Voici un script que j'ai écrit et j'espère que quelqu'un trouve qu'il est utile.
source /etc/profile
au début de ~/.pycharmrc fichier (sur Mac Yosemite) 2) Dans Pycharm modifier les Préférences > Outils > Terminal > Shell chemin "/bin/bash --rcfile ~/.pycharmrc"PyCharm 4 a maintenant virtualenvs intégré dans l'IDE. Lors de la sélection de votre projet interprète, vous pouvez créer, ajouter ou sélectionnez un virtualenv. Ils ont ajouté un "Python Console" qui s'exécute dans la configuration du projet d'interprète.
Plus d'infos ici.
source /path/to/venv/bin/activate
manuellement dans le terminal.Si Vous utilisez la version windows, il est assez facile.
Si vous avez déjà l'environnement virtuel, il vous suffit d'accéder à son dossier, trouver
activate.bat
à l'intérieur deScripts
dossier. copier c'est plein chemin d'accès et le coller dans pycharm du terminal, puis appuyez surEnter
et vous avez terminé!Si vous avez besoin de créer de nouveaux environnement virtuel :
Aller vers des fichiers > paramètres de recherche pour
project interpreter
, l'ouvrir, cliquez sur le bouton d'engrenage et de créer un environnement où vous le souhaitez et puis suivre le premier paragraphe.activate.bat
pour chacun d'eux?activate.bat
fichiers. si vous aimez la réponse, n'hésitez pas à upvote 😉Scripts
dossier. Aussi Pycharm se plaint queactivate.bat
n'est pas valide SDK pythonactivate
fichier de commandes à l'intérieur. ou si il est possible pour vous, juste aller avec la création d'un nouvel environnement.Sur Mac, c'est PyCharm => Préférences... => Outils => Terminal => Activer virtualenv, qui doit être activé par défaut.
J'ai juste ajouté un script nommé pycharmactivate à mon répertoire home. Définir la valeur de PyCharm (4.0.1) Fichier > Paramètres > Outils > Terminal > Shell chemin vers /bin/bash --rcfile ~/pycharmactivate.
Peut-être pas la meilleure solution en cas vous avez différents projet et virtualenv répertoires/les noms, mais cela fonctionne pour moi. Ce script contient 3 lignes et suppose que votre virtualenv a le même nom que votre projet dir.
Suite à la réponse de Pierre,
ici, la version Mac de la
.pycharmrc
fichier:Poule
J'ai regardé toutes les réponses ci-dessus, mais aucun d'eux n'est assez élégant pour moi. Dans Pycharm 2017.1.3(dans mon ordinateur), le plus simple est d'ouvrir
Settings->Tools->Terminal
et vérifierShell integration
etActivate virtualenv
options.J'ai une solution qui a fonctionné sur mon ordinateur Windows 7.
Je crois PyCharm du terminal est un résultat de l'exécution de
cmd.exe
, ce qui vous permettra de charger WindowsPATH
variable, et d'utiliser la version de Python qu'il trouve d'abord à l'intérieur de cettePATH
. Pour modifier cette variable, à droite, cliquez sur Mon Ordinateur --> Propriétés --> Paramètres Système Avancés --> Avancé onglet --> Variables d'Environnement... bouton. Dans le variables Système section, de sélectionner et de modifier lePATH
variable.Voici la partie de mon
PATH
avant d'édition:...et après édition
PATH
(seulement 3 lignes):Pour tester cela, ouvrez un nouveau windows terminal (Commencer --> tapez dans
cmd
et appuyez sur Entrée) et voir si c'est à l'aide de votre environnement virtuel. Si cela fonctionne, redémarrer PyCharm puis de la tester dans PyCharm du terminal.c'est ce que je fais:
créer un activate_env.chauve-souris(windows,peut-être .sh sous linux) fichier dans le code source folde:
et un autre fichier deactivate_env.chauve-souris:
à chaque fois ouvrir la fenêtre de terminal, exécutez simplement le fichier bat pour activer/désactiver le virtualenv, vous séjournerez dans le code source de chemin, pas besoin de changer de chemin et à l'arrière.
Si votre Pycharm 2016.1.4 v et plus vous devez utiliser
"default path" /K "<path-to-your-activate.bat>"
n'oubliez pas les guillemets
Une autre alternative est d'utiliser virtualenvwrapper pour gérer vos environnements virtuels. Il semble qu'une fois la virtualenvwrapper le script est activé, pycharm pouvez l'utiliser et puis le simple
workon
commande sera disponible à partir de la pycharm de la console et de vous présenter avec les environnements virtuels:Cette méthode devrait fonctionner avec de l'arbitraire des environnements virtuels par projet et ne pas faire de suppositions sur votre environnement, car elle est à l'aide de crochets que vous créez.
Vous écrivez:
Étant donné que l'actuelle dernière PyCharm (Communauté 2016.1) ne permet pas de paramètres du Terminal par projet commencer avec le script qui appelle le projet spécifique de crochet. C'est mon
~/.pycharmrc
:Si vous utilisez autre chose que Bash, appeler votre propre
.bash_profile
équivalent si vous le souhaitez.Maintenant définir votre PyCharm "Outils -> Terminal -> Shell Chemin" pour appeler ce script, par exemple:
/bin/bash --rcfile ~/.pycharmrc
Enfin, pour chaque PyCharm projet, vous avez besoin d'un environnement virtuel est activé, créer un fichier dans le PyCharm racine du projet
.pycharm/term-activate
. C'est votre crochet et il va tout simplement de définir le nom de votre environnement virtuel pour votre PyCharm projet:Bien sûr, vous pouvez prolonger votre crochets avec tout ce que vous trouvez utile dans le terminal de l'environnement de votre PyCharm projet.
Pour conda environnements virtuels sous Windows, assurez-vous que votre fichier batch n'est PAS nommé
activate.bat
que cela va provoquer un conflit avec le condaactivate
commande, résultant en un appel récursif du fichier de commandes.Ce qui fonctionne pour moi est la suivante Coquille chemin:
Et dans l'activer-env.fichier bat:
Je voulais un distinct environnement virtuel pour chaque projet, et n'a pas beaucoup de soins pour avoir des fichiers supplémentaires pour faciliter cela. Une solution qui vous avez seulement besoin de le faire une fois et fonctionne pour tous les projets est ensuite ajouter les lignes suivantes à votre
.bashrc
ou.bash_profile
:Ce vérifie si il y a un environnement virtuel dans lequel le terminal est ouvert, et si oui pour l'activer (et bien sûr, d'autres moyens pourraient être utilisés). PyCharm terminal de paramètres peuvent être laissés par défaut.
PyCharm 4.5.4
Je ne suis pas pourquoi, mais il ne fonctionne pas pour moi. PyCharm imprime un message d'erreur.
cmd.exe /K "<path-to-your-activate.bat>"
Il fonctionne, mais il crée le même virtualenv pour chaque projet, et même si cela n'est pas nécessaire.
Ce la réception travaille! Mais la chaîne
/env_yourenvlocate/scripts/activate.bat
doit contenir des guillemets, comme ceci"Full_path_to_your_env_locate\scripts\activate.bat"
!Désactiver le virtualenv est très facile à taper dans le terminal "désactiver"
Solution pour WSL (Ubuntu sur Windows)
Si vous utilisez WSL (Ubuntu sur Windows), vous pouvez également ouvrir bash en tant que terminal de pycharm et activer un linux virtualenv.
Utiliser un
.pycharmrc
fichier comme décrit dans Peter Gibson réponse; Ajouter le.pycharmrc
fichier dans votre répertoire home avec le contenu suivant:Dans Pycharm Fichier > Paramètres > Outils > Terminal ajouter le "Shell" chemin:
Projet spécifique virtualenv
Le chemin d'accès à votre virtualenv dans
.pycharmrc
ne doit pas être absolue. Vous pouvez définir un projet spécifique virtualenv en définissant un chemin relatif à partir de votre répertoire de projet.Mon virtualenv est toujours situé dans une "venv' dossier dans mon dossier de projet, donc mon
.pycharmrc
fichier ressemble à ceci:BONUS: ouvrir automatiquement le tunnel ssh pour se connecter virtualenv projet interprète
Ajouter les éléments suivants à votre
.pycharmrc
fichier:Ce vérifie si un tunnel ssh est déjà ouvert, et s'ouvre un autre.
Dans Fichier -> Paramètres -> Projet -> Projet Interprète dans Pycharm, ajouter un nouvel interprète à distance avec la configuration suivante:
Maintenant, lorsque vous ouvrez votre projet, votre bash démarre automatiquement sur votre virtualenv, ouvre un tunnel ssh, et pycharm relie le virtualenv comme interprète à distance.
avertissement: la dernière mise à jour de Windows démarre automatiquement un SshBroker et SshProxy service au démarrage. Ces blocs, le tunnel ssh à partir de linux à windows. Vous pouvez arrêter ces services dans le Gestionnaire des Tâches -> les Services, après lequel tout fonctionnera de nouveau.
Une option que vous avez lorsque vous entrez dans le terminal >
Run > Debug > Modifier les Configurations
sélectionnez la conda environmnent..
Aussi lorsque vous créez un nouveau projet, il demande à configurer cet emplacement.