(mit Python 3.4) So habe ich einen großen Ordner mit 1500 Ordnern darin. Ich möchte Daten analysieren, die 2 Ebenen in jedem Ordner sind. Der Name jedes Ordners hat das Format:Verzeichnispfad als Benutzereingabe, aber für mehrere Ordner gleichzeitig
YYMMDD_XXXXX_####X
wobei X
ein Buchstabe ist und #
eine Nummer ist. Alles, was mir wirklich wichtig ist, ist der ####X
Teil, der einzigartig ist. In diesem Ordner befindet sich ein Ordner namens "infosite-####X"
(derselbe ####X
als der übergeordnete Ordner), und in diesem Ordner befindet sich eine rst
Datei mit der Bezeichnung "YYMMDD_XXXXX_####X_infosite.rst"
(auch die gleiche ID), die die gewünschten Daten hat.
Ich habe den Code für die Datenanalyse erstellt, aber ich möchte nicht das gesamte Verzeichnis eingeben, wenn jedes Verzeichnis diese eindeutige 5mer-Sequenz hat.
Im Moment habe ich das Verzeichnis mit einer einzigen Datei, die ich hart codiert wollen und tun es wie folgt aus:
import os
os.chdir("Z:/RunLog/160428_HV2VY_1892L/infosite-1892L")
user_input = input("Enter name of file: ")
assert os.path.exists(user_input + ".rst"), "I did not find the file at, " + str(user_input)
f = open(user_input + ".rst" ,'r+')
print("Hooray we found your file!")
Im Idealfall würde Ich mag etwas haben, wie
os.chdir("Z:/RunLog/*" + user_input + "/*" user_input + "/*" user_input + ".rst")
aber dieses isn 't wirklich erlaubt, und ich sehe nicht, wie man glob.glob
damit benutzt.
Sie meinen, die Benutzereingabe ist diese eindeutige ID? – Kasramvd
Yep-Eingabe ist die eindeutige ID – Leigh
Ist es wichtig, dass Ihr Programm 'os.chdir()' aufruft? Machst du das nur, um 'open()' zu erstellen? Wenn ja, könnten Sie den absoluten Pfad zu 'open()' übergeben und das 'chdir()' vermeiden. –