Nadal dochodzę do porozumienia z ekosystemem Python i PyCharm, więc zróbcie to z przymrużeniem oka, ale po reading up a bit, pomyślałem, że napiszę szczegółowe wyjaśnienie.
Podczas instalacji Anaconda zmienia domyślny interpreter języka Python na ~/anaconda/bin/python. Ten interpreter jest skonfigurowany z sys.path
, który domyślnie jest bibliotekami w ~/anaconda/lib. Menedżerowie pakietów, jak Python's PIP, używają interpretera, który je uruchamia, aby określić ścieżkę instalacji pakietów, więc po zainstalowaniu Anacondy wszystkie pakiety zainstalowane za pomocą pip lub innych metod zostaną umieszczone gdzieś wewnątrz ~/anaconda/lib. to znaczy, że nawet bez użycia czegoś takiego jak virtualenv, każdy interpreter Pythona ma własny ekosystem, a uruchomienie pip z różnymi tłumaczami spowoduje zainstalowanie pakietów w różnych katalogach.
PyCharm obsługuje to wszystko na ekranie Project Settings-->Project Interpreter-->Python Interpreters
. Aby powiadomić PyCharm o dystrybucji Anacondy, musisz dodać interpreter pytającego Anacondy do listy Project Interpreter-->Python Interpreters
i ustawić ją jako domyślną dla projektu. PyCharm następnie zlokalizuje wszystkie pakiety zainstalowane w ekosystemie tłumacza Anacondy (~/anaconda/lib) i wyświetli je w niższym okienku pod numerem packages
. Poprosi Cię również o zainstalowanie setup_tools i pip dla tego interpretera, a kiedy to zrobisz, będziesz mógł użyć przycisku install
w dolnym okienku, aby dodać więcej pakietów do ekosystemu Anaconda.
Po dodaniu interpretera Anaconda można również użyć przycisku virtualenv na pasku narzędzi w górnym panelu, aby utworzyć virtualenv, który dziedziczy po środowisku tłumacza Anaconda. W ten sposób możesz zainstalować nowe pakiety w sposób, który nie wpłynie na globalną dystrybucję Anacondy.
Czy poprawnie uruchomiłeś instalację? Czy powiedziałeś "tak", gdy zapytał cię, czy może zmodyfikować '.bashrc'? – Rohit
@Rohit W OSX jest .bash_profile, ale tak, instalator zmienił (dodał anakondę/bin do zmiennej PATH). – hillel
Tak. Przepraszam. Jest to przydatne tylko dla wbudowanego interpretera. – Rohit