Frage

Das ist etwas, was meiner Meinung nach sehr nützlich wäre.Grundsätzlich würde ich mir wünschen, dass es eine Möglichkeit gibt, Python-Quellen programmgesteuert zu bearbeiten, ohne dass ein menschliches Eingreifen erforderlich ist.Es gibt ein paar Dinge, die ich damit gerne tun würde:

  1. Bearbeiten Sie die Konfiguration von Python-Apps, die Quellmodule zur Konfiguration verwenden.

  2. Richten Sie eine „Vorlage“ ein, damit ich eine Python-Quelldatei im Handumdrehen anpassen kann.Auf diese Weise kann ich ein „Projekt“-System für eine Open-Source-App, an der ich arbeite, einrichten und die Anpassung bestimmter Dateien ermöglichen.

Ich könnte wahrscheinlich selbst etwas schreiben, das dies kann, aber ich kann mir vorstellen, dass dadurch viele Probleme entstehen, bei denen der Teufel im Detail steckt.Gibt es derzeit irgendwelche Möglichkeiten, dies zu tun, oder muss ich einfach in den sauren Apfel beißen und es selbst umsetzen?

War es hilfreich?

Lösung

Die Standardbibliothek von Python bietet ziemlich gute Möglichkeiten für die Arbeit mit Python-Quellen;beachten Sie das tokenisieren Und Parser Module.

Andere Tipps

Die meisten dieser Dinge können programmgesteuert in Python mithilfe von Modulen wie sys, os und dem Special ermittelt werden _Datei_ Bezeichner, der Ihnen sagt, wo Sie sich im Dateisystempfad befinden.

Es ist wichtig zu bedenken, dass ein Modul beim ersten Import alles im Dateibereich ausführt, was für die Entwicklung systemabhängigen Verhaltens wichtig ist.Beispielsweise bestimmt das OS-Modul grundsätzlich, welches Betriebssystem Sie beim Import verwenden, und passt dann seine Implementierung entsprechend an (durch Importieren eines anderen Moduls, das Linux, OSX, Windows usw. entspricht).

In dieser Funktion steckt eine Menge Leistung, und etwas in dieser Richtung ist wahrscheinlich das, wonach Sie suchen.:) :)

[Bearbeiten] Ich habe in einigen seltenen, hackigen Fällen auch socket.gethostname() verwendet.;)

Ich hatte das gleiche Problem und habe einfach die Datei geöffnet und etwas ersetzt:Laden Sie dann die Datei im Python-Interpreter neu.Das funktioniert gut und ist einfach durchzuführen.

Andernfalls müssen Sie AFAIK einige Conf-Objekte verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top