2011-10-21 10 views
47

Przechodzę i piszę dokument konfiguracyjny dla innych programistów w pracy dla projektu Pythona i czytałem w zmiennej środowiskowej PYTHONPATH. Patrzę na mój obecny system programistyczny i myślę, że mam kilka źle ustawionych rzeczy, które powodują, że mój IDE (IntelliJ) zachowuje się niepoprawnie podczas wyszukiwania bibliotek Pythona.Co dokładnie powinno być ustawione w PYTHONPATH?

Przyjrzałem się dokumentacji here i here i nadal nie jestem pewien, co właściwie powinno być w zmiennej środowiskowej PYTHONPATH.

Mam PYTHONHOME wskazał na `C: \ Python27 '.

Mój obecny PYTHONPATH jest ustawiony na PYTHONHOME. Czy powinienem również dodać katalogi z sys.path?

UPDATE:

Na podstawie poniższej informacji PYTHONPATH nie trzeba ustawiać, chyba że istnieją niestandardowe biblioteki, które chcesz python, aby móc znaleźć domyślnie. Na przykład, po zainstalowaniu wxPython z instalatora doda jego biblioteki do PYTHONPATH. Ustawiam PYTHONHOME na root instalacji Pythona, dzięki czemu mogę dodać go do mojej zmiennej środowiskowej systemu PATH, dzięki czemu mogę uruchomić pythona z dowolnego miejsca.

Odpowiedz

29

Nie musisz ustawiać żadnej z nich. PYTHONPATH można ustawić tak, aby wskazywał na dodatkowe katalogi z bibliotekami prywatnymi. Jeśli PYTHONHOME nie jest ustawione, Python domyślnie używa katalogu, w którym został znaleziony python.exe, więc katalog powinien być w PATH.

+3

PYTHONHOME faktycznie wskazuje do katalogu biblioteki standardowej domyślnie (na przykład/usr/local/lib/pythonXX). –

+1

@Ferdinand Nie w systemie Windows. To nie jest ustawione. Ale chodzi o to, że użytkownik zwykle nie musi się z nimi komunikować, chyba że ma prywatny katalog bibliotek inny niż domyślny. –

+2

Oczywiście nie jest ustawiony - Python nigdy nie ustawia zmiennych środowiskowych. Ale istnieje wewnętrzny odpowiednik PYTHONHOME, który można * przesłonić * przy użyciu zmiennej środowiskowej. Mówię o domyślnej wartości tej wewnętrznej zmiennej. –

18

Dla większości instalacji nie powinieneś ustawiać tych zmiennych, ponieważ nie są one potrzebne do uruchomienia Pythona. Python wie, gdzie znaleźć swoją standardową bibliotekę.

Jedynym powodem ustawienia PYTHONPATH jest zachowanie katalogów niestandardowych bibliotek Pythona, których nie chcesz instalować w globalnej domyślnej lokalizacji (tj. Katalogu site-packages).

Koniecznie przeczytaj: http://docs.python.org/using/cmdline.html#environment-variables

+0

ok, więc nie powinieneś. Ale co powinieneś zrobić ?! Chcesz uruchomić moduły w ścieżce i nie chcesz ścieżek zawierających kod źródłowy (nie względne i zdecydowanie nie statyczne ścieżki). – pashute

Powiązane problemy