Seite 1 von 1
Projektverwaltung und Umlaut
Verfasst: Sonntag 31. August 2014, 18:52
von pixewakb
Hi,
(1) inzwischen arbeite ich an einem ersten Projekt, das Funktionalität in verschiedenen, miteinander verbundenen Komponenten bereitstellt. Meine erste Frage zielt darauf, wie ihr solche Projekte organisiert (Projektverwaltung). U. a. habe ich Klassen, die eigentlich von verschiedenen Modulen (später) gebraucht werden. Importieren kann ich die direkt aber nur im aktuellen Verzeichnis. Wie kann ich es machen, dass verschiedene Tools in verschiedenen Verzeichnissen darauf zugreifen können?
(2) Ich habe aktuell ein Problem mit den Umlauten, d. h. wenn ich ein Skript aus Idle herausstarte, dann funktioniert alles. Wenn ich es über Doppelklick auf das Skript starten will, d. h. die "schwarze" Konsole öffnet sich, dann gibt es eine Fehlermeldung und das Skript stürzt ab. Ich denke, dass es an den Umlauten liegt. Bei php weiß ich, dass den Quelltext mittels Notepad++ auf ein anderes Format ändern kann. Ist das hier auch nötig???
Wahrscheinlich sind die Fragen recht dämlich, aber genau hier hänge ich aktuell. Danke für Antworten!
Re: Projektverwaltung und Umlaut
Verfasst: Sonntag 31. August 2014, 19:26
von BlackJack
@pixewakb: Ad 1: Installiere die Module. Wenn es mehrere zusammengehörige gibt, würde ich die in ein Package stecken. Lies Dir am besten durch was die Python-Dokumentation zum Thema `setup.py` zu sagen hat, ausserdem gibt es bei python.org einen Package Guide der noch etwas weiter geht und zum Beispiel ``pip`` und den Python Package Index (pypi) behandelt.
Ad 2: Starte es einfach mal in einer Konsole und lies die Fehlermeldung. Die sollte Dich auf ein PEP verweisen wo alles dazu drin steht.
Re: Projektverwaltung und Umlaut
Verfasst: Sonntag 31. August 2014, 22:59
von pixewakb
Zu (1): Also die Module und Klassen habe ich selbst geschrieben, sie liegen im Wurzelverzeichnis eines Projekts. Ich muss aber für das Projekt weitere Tools schreiben, die ich aktuell nicht in den zentralen Projektordner packen möchte oder kann. Mein Problem ist aktuell, dass ich Sorge habe, dass ich im Projektordner den Überblick verliere, das ist aktuell mein Problem. Mittelfristig soll das alles mal in einer Software drinstecken, aber im Moment kann ich davon nur träumen. Gilt deine Empfehlung auch für diesen Fall, d. h. ich will keine externe Software installieren.
Zu (2): http://legacy.python.org/dev/peps/pep-0263/ wurde mir in der Windows-Konsole (Win 7) jetzt angezeigt. Die Konsole poppt auf und ist direkt wieder weg. Ich habe gerade einen Screenshot hinbekommen, wobei die Schrift schon mit dem Fenster transparent ist... Mit dem Link oben komme ich weiter...
Ich habe jetzt den Quelldateien hinzugefügt:
Ich habe diesen Beitrag bearbeitet, weil dieser Teilpunkt "abgeschlossen" scheint. Möglicherweise hat jemand anders dieses Problem noch einmal und sucht nach dieser Lösung.
Re: Projektverwaltung und Umlaut
Verfasst: Sonntag 31. August 2014, 23:17
von BlackJack
@pixewakb: Grundätzlich würde ich erst einmal jedes Projekt was nicht nur aus einem Modul besteht in ein Package verschieben. Damit verringert man die Gefahr von Namenskollisionen bei Modulen weil nur noch der Paketname selber ”in Konkurrenz” zu anderen Namen auf oberster Ebene steht.
Wenn man dann Teile hat die man in mehreren Projekten verwenden möchte, dann macht man da am besten eine Bibliothek draus, die man einzeln pflegen und installieren kann. Installieren kann hier bedeuten: Global auf dem gesamten System oder nur für einen Benutzer. Mit `virtuelenv` könnte man sogar noch feiner unterteilen wofür man etwas installiert.
Re: Projektverwaltung und Umlaut
Verfasst: Sonntag 31. August 2014, 23:21
von EyDu
pixewakb hat geschrieben:Gilt deine Empfehlung auch für diesen Fall, d. h. ich will keine externe Software installieren.
Das hast du falsch verstanden. Du sollst keine externe Software installieren, du sollst *deine* Module/Pakete installieren. Dann sind die global verfügbar.
pixewakb hat geschrieben:Zu (2): http://legacy.python.org/dev/peps/pep-0263/ wurde mir in der Windows-Konsole (Win 7) jetzt angezeigt. Die Konsole poppt auf und ist direkt wieder weg. Ich habe gerade einen Screenshot hinbekommen, wobei die Schrift schon mit dem Fenster transparent ist... Mit dem Link oben komme ich weiter...
Das ist schon ein wenig umständlich

Öffne die Konsole und start aus dieser das Programm. Dann schließt sich die Konsole auch nicht wieder und du kannst die Fehlermeldung beliebig lange lesen. Deine Programme aus IDLE starten ist auch keine gute Idee, da wird zu viel alter Zustand gespeichert. Damit erkennst du mögliche Fehler gar nicht. Wenn du eh nur Idle verwendest, dann kannst du auch jeden anderen Editor mit Syntax-Highlighting benutzen.
Die Art deiner Encoding-Angabe ist etwas ungewöhnlich üblich ist:
Wichtig ist aber, dass die Codierung der Datei auch wirklich der angegebenen entspricht!
Re: Projektverwaltung und Umlaut
Verfasst: Montag 1. September 2014, 12:41
von pixewakb
Idle ist für mich sehr schnell und ich bin an die Arbeitsweise gewohnt. Zudem brauche ich die Shell noch, um Fehler zu finden und Quellcode testen zu können. Ich nutze für php normal Komodo Edit 8, aber finde ich für Python nicht schön. Für Großprojekte habe ich noch Aptana, aber das lädt mir entschieden zu langsam. Ich komme eigentlich mit Idle gut zurecht.
Kann ich die Codierung zufällig für Idle festlegen, d. h. jede neue Quellcodedatei hat dann schon ihre Codierung nach utf-8? Bei php habe ich eine Möglichkeit dafür noch nicht gefunden, was lästig ist, wenn ich es separat mittel Notepad++ manuell umstellen muss.
Re: Projektverwaltung und Umlaut
Verfasst: Montag 1. September 2014, 13:47
von BlackJack
@pixewakb: Als Shell kann man zusätzlich zum Editor (also einen anderen als IDLE) auch IPython oder bpython verwenden.