470 Stimmen

Ein Verzeichnis dauerhaft zum PYTHONPATH hinzufügen?

Wann immer ich die sys.path.append wird das neue Verzeichnis hinzugefügt. Sobald ich jedoch Python schließe, wird die Liste auf die vorherigen (Standard-?) Werte zurückgesetzt. Wie füge ich ein Verzeichnis dauerhaft zu PYTHONPATH ?

3voto

aahnik Punkte 1084

Behebung von Python-Pfad-Problemen beim Wechsel von bash zu zsh

Ich hatte Probleme mit Python Path, als ich zu zsh aus der Bash.

Die Lösung war einfach, aber ich habe es übersehen.

Pip hat mir gezeigt, dass die Skripte blah blah o Paket blah blah ist installiert in ~/.local/bin das ist nicht im Pfad .

Nachdem ich einige Lösungen zu dieser Frage gelesen hatte, öffnete ich meine .zshrc um festzustellen, dass die Lösung bereits existiert.

Ich musste einfach eine Zeile auskommentieren:

Sehen Sie selbst

Screenshot from 2020-10-07 13-38-17

2voto

Cloud Cho Punkte 1242

Ich habe permanent in Windows Vista, Python 3.5

System > Systemsteuerung > Erweiterte Systemeinstellungen > Erweitert (tippen Sie auf) Umgebungsvariablen > Systemvariablen > (wenn Sie PYTHONPATH nicht in der Spalte Variable sehen) (klicken Sie auf) Neu > Variablenname: PYTHONPATH > Variablenwert:

Bitte schreiben Sie das Verzeichnis in den Variablenwert. Es handelt sich um Details aus der Antwort von Blue Peppers.

2voto

Filipe Punkte 147

Ich habe hier eine Lösung gefunden, um dies in einer Anaconda-Umgebung zu tun: https://datacomy.com/python/anaconda/add_folder_to_path/

Einfach:

conda develop /your_path

1voto

DougR Punkte 2760

Inspiriert von andrei-deusteanu Antwort, hier ist meine Version. Damit können Sie eine Reihe von zusätzlichen Pfaden in Ihrem site-packages-Verzeichnis erstellen.

import os

# Add paths here.  Then Run this block of code once and restart kernel. Paths should now be set.
paths_of_directories_to_add = [r'C:\GIT\project1', r'C:\GIT\project2', r'C:\GIT\project3']

# Find your site-packages directory
pathSitePckgs = os.path.join(os.path.dirname(os.__file__), 'site-packages')

# Write a .pth file in your site-packages directory
pthFile = os.path.join(pathSitePckgs,'current_machine_paths.pth')
with open(pthFile,'w') as pth_file:
    pth_file.write('\n'.join(paths_of_directories_to_add))

print(pthFile)

0voto

Rubber Duck Punkte 3454

In Python 3.6.4 können Sie sys.path über Python-Sitzungen hinweg wie folgt beibehalten:

import sys
import os

print(str(sys.path))

dir_path = os.path.dirname(os.path.realpath(__file__))
print(f"current working dir: {dir_path}")

root_dir = dir_path.replace("/util", '', 1)
print(f"root dir: {root_dir}")

sys.path.insert(0, root_dir)

print(str(sys.path))

Ich empfehle Ihnen dringend, virtualenv und virtualenvwrapper zu verwenden, da Sie sonst Ihren Pfad überladen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X