Gibt es eine Konfigurationsdatei, in der ich das Standardarbeitsverzeichnis festlegen kann? Momentan ist es standardmäßig auf mein Home-Verzeichnis eingestellt, aber ich möchte es beim Start auf ein anderes Verzeichnis setzen. Ich weiß, dass ich "import os" gefolgt von "os.chdir (" ")" machen kann, aber das ist ziemlich mühsam. Es wäre großartig, wenn es eine Conf-Datei gibt, die ich bearbeiten und ändern kann, aber ich kann sie nicht finden.
Insbesondere habe ich mir den Desktop-Eintrag '/usr/share/applications/idle-python3.2.desktop' des OS (Ubuntu) angesehen, der keine conf-Datei enthält, sondern auf 'zeigt /usr/lib/python3.2/idlelib/PyShell.py ', das auf config - *. def conf-Dateien im selben Ordner verweist, wobei' config-main.def 'der wahrscheinlichste Kandidat ist. Ich finde jedoch nicht, wo der Standardpfad angegeben ist oder wie er geändert werden kann.
Es scheint, dass der Pfad in PyShell.py fest codiert ist, obwohl ich mit meinem begrenzten Wissen über Python falsch liegen könnte. Ich werde weiter schauen, aber würde es schätzen, wenn jemand die Antwort auf seinem Kopf kennt. Vielen Dank im Voraus.
Ich habe gerade die einfachste Antwort gefunden, wenn Sie den Shortcut-Link "IDLE (Python GUI)" verwenden. Dies ist in Windows Vista, also weiß ich nicht, ob es in anderen Betriebssystemen funktioniert.
1) Klicken Sie mit der rechten Maustaste auf "Eigenschaften".
2) Wählen Sie die Registerkarte "Verknüpfung".
3) In "Start In" schreiben Sie den Dateipfad (z. B. "C: \ Users ...").
Dies ist auch meine Antwort hier: Standardspeicherpfad für Python IDLE? Lass es mich wissen, wenn das funktioniert!
Ich habe nach dem Betrachten von PyShell.py eine Lösung gefunden:
%Vor%
%Vor%
Es kann sich ändern, je nachdem, wo Sie Python installiert haben. Öffne IDLE, import os
, dann rufe os.getcwd()
auf und das sollte dir genau sagen, wo deine IDLE gerade arbeitet.
Ein Standardpfad ist in idlelib.IOBinding.IOBinding.dirname
oder idlelib.IOBinding.IOBinding.filename
Ubuntu
Also mein idle-python3.desktop Datei in / usr / share / applications sieht so aus:
%Vor%Um es verwenden zu können, müssen Sie / DEFAULT / DIRECTORY auf das gewünschte Verzeichnis setzen und es mit root-Rechten in / usr / share / applications kopieren. Sie können es auch für Python 2 verwenden, aber dann müssen Sie die 3s durch 2s ersetzen.
Konfigurationsdateien
Es gibt auch Erweiterungen, die geladen werden können. Diese müssen Module sein und Sie müssen sie nach Modulnamen angeben. Die Konfigurationsdateien für IDLE befinden sich in HOME / .idlerc und werden mit einem configparser
analysiert. Ich bin damit nicht weitergekommen.
Hier können Sie das Standardarbeitsverzeichnis von IDLE für MacOS zurücksetzen, indem Sie Idle als Anwendung starten, indem Sie darauf doppelklicken. Sie benötigen eine andere Lösung, wenn Sie Idle über eine Befehlszeile im Terminal starten. Diese Lösung ist eine dauerhafte Lösung. Sie müssen das Verzeichnis nicht jedes Mal neu erstellen, wenn Sie IDLE starten. Ich wünschte, es wäre einfacher.
Die Idee besteht darin, eine Ressourcendatei innerhalb des IDLE-Pakets in Anwendungen zu bearbeiten.
Beginnen Sie mit der Suche nach der Datei. Gehen Sie im Finder zu IDLE in Anwendungen (im Python-Ordner), als ob Sie es öffnen möchten. Klicken Sie mit der rechten Maustaste und wählen Sie "Paketinhalt anzeigen". Öffnen Sie den Inhalt, und öffnen Sie Ressourcen. In Ressourcen sehen Sie eine Datei namens idlemain.py. Diese Datei wird ausgeführt, wenn Sie im Leerlauf starten, und legt unter anderem das Arbeitsverzeichnis fest. Wir werden das bearbeiten.
Aber bevor Sie es bearbeiten können, müssen Sie sich selbst die Erlaubnis geben, darauf zu schreiben. Um dies zu tun, klicken Sie mit der rechten Maustaste auf die Datei "idlemain.py" und wählen Sie "get info". Scrollen Sie bis zum Ende des Getinfo-Fensters und Sie sehen die Sharing & amp; Berechtigungsbereich Unten rechts ist ein Schloss icom. Klicken Sie auf das Schloss und folgen Sie den Anweisungen, um es zu entsperren. Sobald es freigeschaltet ist, schauen Sie nach links für das + (unter der Liste der Benutzer mit Berechtigungen). Klick es. Dadurch wird ein Fenster mit einer Liste von Benutzern angezeigt, die Sie hinzufügen können. Wählen Sie sich selbst aus (wahrscheinlich der Name Ihres Computers oder Ihres Benutzerkontos) und klicken Sie auf Auswählen. Sie werden sehen, dass Sie der Liste der Namen mit Berechtigungen hinzugefügt wurden. Klicken Sie auf die Stelle, an der neben Ihrem Namen "Nur lesen" steht, und ändern Sie sie in "Lesen und Schreiben". Pass auf, dass du nichts anderes änderst. Wenn Sie fertig sind, klicken Sie erneut auf die Sperre, um die Änderungen zu speichern.
Gehen Sie jetzt zurück zu idlemain.py und öffnen Sie es mit einem beliebigen Texteditor (Sie könnten Idle, TextEdit oder irgendetwas verwenden. Rechts unter der import-Anweisung befindet sich der Code zum Ändern des Standardarbeitsverzeichnisses. Lesen Sie den Kommentar, wenn Sie mögen, dann ersetzen Sie die einzelne Zeile des Codes unter dem Kommentar mit
os.chdir ('Pfad Ihres gewünschten Arbeitsverzeichnisses')
Meins sieht so aus:
os.chdir ('/ Benutzer / MeinName / Dokumente / Python')
Speichere deine Änderungen (was funktionieren sollte, weil du dir die Erlaubnis gegeben hast). Beim nächsten Start von Idle sollten Sie sich in Ihrem gewünschten Arbeitsverzeichnis befinden. Sie können dies mit den folgenden Befehlen überprüfen:
Import os
os.getcwd ()
Ich bin neu bei Python und lerne von 'Dive in Python' von Mark Pilgrim (kann online kostenlos gefunden werden) Die Antwort ist in Kapitel 2.4 - hoffe er macht mir nichts aus, wenn ich es hier einfüge, da es auch sein Buch verstopft und in der GPL ist.
Bevor Sie weiter gehen, möchte ich kurz die Bibliothek erwähnen Suchpfad Python sieht an mehreren Stellen aus, wenn Sie versuchen, ein Modul. Insbesondere sieht es in allen Verzeichnissen aus, die in definiert sind Systempfad Dies ist nur eine Liste, und Sie können sie einfach anzeigen oder ändern mit Standardlistenmethoden. (Sie werden später mehr über Listen erfahren.) dieses Kapitel.)
Beispiel 2.4. Suchpfad importieren
%Vor%Es ist ein gutes Buch Ich bin ein Programmierer - normalerweise finde ich, dass das Lernen aus Büchern mich schnell schlafen lässt - nicht der Fall hier ....
Tags und Links python python-idle