Am 26.08.24 um 12:42 schrieb Stefan Ram:
Viele Python-Programmierer kommen irgendwann einmal an den
Punkt, daß sie ein selbstgeschriebenes Modul "meinmodul" in
verschiedenen eigenen Projekten importieren wollen, die aber
in anderen Verzeichnissen stehen.
In vielen Python-Büchern wird diese Thema leider kaum
behandelt. Wenn man lange genug rumfragt, erfährt man,
daß man eine "bearbeitbare Installation" mit
pip install -e <Pfad mit den Modulen>
erzeugen soll. Aber dafür soll man erst einmal eine "setup.py"
or "pyproject.toml" anlegen. Hier habe ich dann noch ein Problem
mit den "setuptools". Die soll ich auch erst einmal installieren
("Batteries included"?), aber wenn ich das dann mache (neueste
Version!) und "import setuptools" ohne Fehlermeldung läuft,
meldet pip weiterhin, daß ihm die setuptools fehlen . . .
Also, das macht mir so keinen Spaß! Es erinnert an Java. Nach
etwas Probieren fand ich heraus, daß folgende Technik hier
unter einer aktuellen Version von CPython zum Ziel führt:
Ich gehe in das "Lib/site-packages"-Verzeichnis der Python-
Installation. Dort lege ich eine Datei mit der Endung ".pth" an,
zum Beispiel "meinmodul.pth". In diese Datei schreibe ich eine Zeile
mit dem Dateisystempfad des Verzeichnisses, in dem sich die Module
befinden, die ich von überall her importieren können will. Fertig.!
Das ist so schön einfach - ich bin sicher, daß die Herrscher
der Python-Welt es schon als "deprecated" markiert haben und
bald entfernen werden . . .
Mein Schablone für Python Programm Anfänge:
#!/usr/bin/python3
import os, sys, string
sys.path.append("Name von meinem Standard Pythonverzeichnis")
Ein Schattenverzeichnis mit symlinks halte ich wegen .pyc
auch zweckmäßig,
da Editoren auf die Originaldateien zugreifen,
in grep -rn aber .pyc unerwünscht ist
--
<http://www.hermann-riemann.de>
_______________________________________________
python-de Mailingliste -- python-de@python.org
Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an
python-de-le...@python.org
https://mail.python.org/mailman3/lists/python-de.python.org/
Mitgliedsadresse: arch...@mail-archive.com