Wie prüfst Du denn, ob das Verzeichnis da ist? Wenn os.listdir keinen Fehler produziert, obwohl das Verzeichnis nicht existiert, halte ich es für möglich, dass auch os.stat keinen Fehler liefert - dass es also schlichtweg keine Möglichkeit gibt, herauszufinden, dass es dieses Verzeichnis *nicht* gibt.
Was passiert denn, wenn Du in dir.exe auf die entsprechenden Pfade aufrufst?
Ciao, Martin
Hier die Antwort: existierender Pfad: m:\RL Test mit falscher Schreibweise (lowercase) auf Samba Laufwerk: 1) unter der Console: dir m:\rl Datenträger in Laufwerk M: ist test1 Datenträgernummer: 71E6-07A6 Verzeichnis von m:\ Datei nicht gefunden 2) Python-2.2.1: os.stat
os.stat("m:\\rl") Traceback (most recent call last): File "<stdin>", line 1, in ? OSError: [Errno 2] No such file or directory: 'm:\\rl'
3) Python-2.2.1: os.path.isdir
os.path.isdir("m:\\rl") 0
4) Python-2.2.1: os.listdir
os.listdir("m:\\rl") []
Wie man sieht wirft os.stat eine Exception, os.path.isdir liefert den korrekten Wert, aber os.listdir erzeugt eine leere Liste. Übrigens liefer os.listdir bei jedem nicht existierenden Samba Pfad eine leere Liste!!! Es sollte aber folgende exception erzeut werden: Bsp:
os.listdir("c:\\rl") # <-- Windows Laufwerk C Traceback (most recent call last): File "<stdin>", line 1, in ? WindowsError: [Errno 3] Das System kann den angegebenen Pfad nicht finden: 'c:\\rl/*.*'
Das Fehlverhalten von os.listdir() bei Samba Laufwerken ist meiner Meinung nach ein Python Bug. Carl PS: Man beachte, das os.stat und os.listdir unterschiedliche Exceptions produzieren (ERRNO 2 und ERRNO 3). -- +++ GMX - Mail, Messaging & more http://www.gmx.net +++ Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage! _______________________________________________ Python-de maillist - Python-de@python.net http://python.net/mailman/listinfo/python-de