Seite 1 von 1

Code-management

Verfasst: Dienstag 16. August 2005, 15:09
von dnaxx
Hallo,

Ich habe mittlerweile einige Klassen erstellt. Alle befinden sich in einem Python-file.
Gibt es in python - ähnlich wie in java eine strategie zum verwalten der einzelnen klassen in eigenen files (nicht als module)?
Wirkt sich das aufspalten - falls es überhaupt möglich ist - stark negativ auf die performance aus?

danke,

Verfasst: Dienstag 16. August 2005, 15:18
von Leonidas
Richtlinien/Strategien (oder im Falle Javas - Zwänge) gibt es nicht, man macht halt wie man es für sinnvoll hält. Auf die Performance wirkt sich das nur unmerklich aus, um nicht zu sagen unmessbar.

Verfasst: Dienstag 16. August 2005, 15:21
von dnaxx
ok.

wenn ich jetzt habe "klasse1.py" und "programm.py". Wie integriere ich jetzt das file "klasse1.py" in "programm.py"? gibt es sowas wie eine "include"-anweisung?

Verfasst: Dienstag 16. August 2005, 15:24
von henning
Was spricht gegen Module?
Es ist ja kein zusätzlicher Aufwand, man muss ja
nur in dem File, dass eine Klasse aus einem anderen verwendet ne import-Anweisung schreiben.
Meiner Erfahrung nach wird das lokale Verzeichnis standardmäßig durchsucht, also muss man auch nix groß mit den Pfaden machen.
Und das Präfix musst du ja auch nicht übernehmen, wenn du
"import * from blahblah" benutzt!

Von der Aufteilung her würde ich es wir bei den meisten anderen Sprachen machen und jede größere Klasse in eine Datei packen und halt die kleineren Sachen, die dazu gehören mit rein...

HTH
Henning

Edit:
Für dein Beispiel:

Code: Alles auswählen

# klasse1.py
# -------------
# ...code von klasse1....


# programm.py
# ----------------
import * from klasse1

# ...code...

Verfasst: Dienstag 16. August 2005, 15:26
von dnaxx
ah. ich hatte einen denkfehler.

Verfasst: Dienstag 16. August 2005, 15:27
von jens
Hier ein Beispiel:

programm.py

Code: Alles auswählen

import klasse1
print klasse1.variable
klasse1.py

Code: Alles auswählen

class klasse1:
    variable = "Ich bin's"
Wenn beide Dateien nicht in einem Verzeichnis sind, dann sucht Python im Pfad nach dem Modul. Man kann aber einfach den Pfad erweitern: http://www.python-forum.de/viewtopic.php?t=3674

Verfasst: Dienstag 16. August 2005, 15:34
von jens
Da die Frage zum Thema import, öfters vorkommen, hab ich mal im Wiki einen Punkt in die FAQ eingefügt:
http://www.pythonwiki.de/PythonDeForum/ ... 52c0f4a7bb

Allerdings bin ich gerade schreibfaul...

Verfasst: Dienstag 16. August 2005, 16:51
von Leonidas
Ich habe schon im Wiki einiges dazu geschreiben, unter ModulImporte. Ich denke, die Informationen kann man dort auch reinschreiben, ich müsste nur mal fertigwerden :?