Erstellen Sie einen Verzeichnis-Test auf dem Desktop und erstellen Sie test.py und test.txt im Verzeichnis. test.txt wird als "Test abgeschlossen" beschrieben. Erstellen Sie das Verzeichnis text2 im Verzeichnis und erstellen Sie test2.txt. test2.txt beschreibt "Test 2 abgeschlossen".
test
├test.py
├test.txt (beschreiben "Test abgeschlossen")
└test2
└test2.txt (beschreiben Sie "Test 2 abgeschlossen")
(2)pwd Geben Sie das aktuelle Verzeichnis und pwd wie folgt in das Terminal ein
/Users/*******/desktop/test
Holen Sie sich mit os.getcwd () den absoluten Pfad des aktuellen Verzeichnisses und mit \ __ file__ den relativen Pfad aus dem aktuellen Verzeichnis.
import os
print(os.getcwd())
print(__file__)
Das Ausführungsergebnis ist wie folgt.
/Users/*******/Desktop/test
file_test.py
(5)os.path.abspath() Sie können den relativen Pfad mit \ __ file__ aus dem aktuellen Verzeichnis abrufen, ihn jedoch mit os.path.abspath () in einen absoluten Pfad konvertieren. Das Verzeichnis kann auch mit einem absoluten Pfad abgerufen werden.
import os
print(os.path.abspath(__file__))
print(os.path.dirname(os.path.abspath(__file__)))
Das Ausführungsergebnis ist wie folgt.
/Users/*******/Desktop/test/file_test.py
/Users/*******/Desktop/test
(6)os.path.join os.path.join kann zwei im Argument angegebene Zeichenfolgen in einem Pfad kombinieren. Lesen Sie zuerst test.txt im Verzeichnis test.
with open('test.txt',encoding='utf-8') as f:
print(f.read())
Dann wird es wie folgt.
Test abgeschlossen
Lesen Sie als nächstes test2.txt im Verzeichnis test2.
with open('test2/test2.txt',encoding='utf-8') as f:
print(f.read())
Dann wird es wie folgt.
Test 2 abgeschlossen
Verwenden Sie als Nächstes os.path.join, um test2 zu lesen, indem Sie den absoluten Pfad zum aktuellen Verzeichnis und den relativen Pfad zu test2.txt kombinieren.
import os
target = os.path.join(os.path.dirname(os.path.abspath(__file__)),'test2/test2.txt')
with open(target,encoding='utf-8') as f:
print(f.read())
Dann wird es wie folgt.
Test 2 abgeschlossen
(7)chdir chdir Wird als [Zielpfad] verwendet. Wird verwendet, um das aktuelle Verzeichnis auf dem Terminal zu verschieben. Erstellen Sie zunächst einen Zielpfad.
import os
target2 = os.path.join(os.path.dirname(os.path.abspath(__file__)),'test2')
Verschieben Sie das aktuelle Verzeichnis über den festgelegten Zielpfad.
os.chdir(target2)
Überprüfen Sie für alle Fälle das aktuelle Verzeichnis und ob es verschoben wurde.
print(os.getcwd())
Durch den Test konnte ich bestätigen, dass das aktuelle Verzeichnis nach test2 verschoben werden konnte.
/Users/*********/Desktop/test/test2
Wenn ich test2.txt direkt lese (
with open('test2.txt',encoding='utf-8')as f:
print(f.read())
Es wird wie folgt richtig ausgegeben. (Wenn das aktuelle Verzeichnis test ist, wird open ('test2.txt', encoding = 'utf-8') durch open ('test2.test2.txt', encoding = 'utf-8') ersetzt.) Es besteht die Notwendigkeit.)
Test 2 abgeschlossen
.py:test.py
import os
print(os.getcwd())
print(__file__)
print(os.path.abspath(__file__))
print(os.path.dirname(os.path.abspath(__file__)))
print('------------------------------------')
with open('test.txt',encoding='utf-8') as f:
print(f.read())
with open('test2/test2.txt',encoding='utf-8') as f:
print(f.read())
target = os.path.join(os.path.dirname(os.path.abspath(__file__)),'test2/test2.txt')
with open(target,encoding='utf-8') as f:
print(f.read())
print('------------------------------------')
target2 = os.path.join(os.path.dirname(os.path.abspath(__file__)),'test2')
os.chdir(target2)
print(os.getcwd())
with open('test2.txt',encoding='utf-8')as f:
print(f.read())
Abrufen des Speicherorts (Pfads) der Datei, die in Python file ausgeführt wird
Recommended Posts