UPDATE: Ich denke, ich habe gerade realisiert, was ich herausfinden muss re: die unten, das ist der richtige Fehlertyp mit der Ausnahme-Klausel angeben (neu, offensichtlich)Beenden Python-Programm, wenn Datenverzeichnis leer ist
Ausgehend von einem angegebenen Stammverzeichnis, durchläuft mein Programm die Unterverzeichnisse, dann die darin enthaltenen Dateien, identifiziert gültige (.csv) Datendateien und aggregiert und führt dann Berechnungen für die Daten durch.
In Fällen, in denen das Stammverzeichnis leer ist, kann jemand eine saubere/anmutige Möglichkeit vorschlagen, das Programm einfach am Anfang ohne weitere Verarbeitung zu beenden?
Ich versuchte, einen Vorschlag, den ich hier anzupassen, aber es hat nicht funktioniert, wie ich erwartet hatte: Exit gracefully if file doesn't exist
dieser Person Code wurde:
def main():
try:
file = open('file.txt', 'r')
except IOError:
print('There was an error opening the file!')
return
ich das über einen Versuch gab, und es funktioniert für den obigen speziellen Fall. Als ich jedoch versuchte, es wie folgt anzupassen, brach es ab und ich bekam einen "Index außerhalb des Bereichs" -Fehler und fiel stattdessen auf den Ausnahmecode.
dir = os.listdir(masterDirPath)
def main():
try:
item = dir[0]
except IOError:
print('The data area is empty.')
return
(auch/stattdessen ich sehr begrüßen Vorschläge für einige völlig andere Herangehensweise an die Aufgabe insgesamt)
Sie sollten die Länge der Richt-Liste überprüfen, oder für den Indexfehler –
Mögliche Duplikat außer Klausel hinzufügen [Ich möchte Ausnahme handle Liste der Index außerhalb des zulässigen Bereichs. '] (http://stackoverflow.com/questions/11902458/i-want-to-exception-handle-list-index-out-of-range) –