Code: Alles auswählen
# das erste mal wird das verzeichnis erzeugt
# nach dem löschen sollte es ein zweites mal erzeugt werden:
# aber es wird nicht erzeugt, mkpath raised nicht mal nen DistutilsFileError !
import os
from distutils import dir_util
dirn="./foo"
print "create " + dirn
print dir_util.mkpath(dirn)
print "remove " + dirn
os.rmdir(dirn)
print "recreate " + dirn
print dir_util.mkpath(dirn)
# mein output:
##############
# create ./foo
# ['foo']
# remove ./foo
# recreate ./foo
# []
##############
# in den letzten eckigen klammern sollte eigentlich auch 'foo' stehen
funktioniert auch im ohne skript, also mit direkt eingabe und auch mit manuellem löschen und mit allen pfaden die ich getestet habe (absolute, relative, linux format mit / , win format mit \ , beide gemischt ) bei mir.
wie kann ich mich je wieder auf mkpath() verlassen
wenn es mkpath() nicht schafft den pfad zu erzeugen (auch wenn es eigentlich keinen Grund dazu gibt) sollte es wenigstens einen DistutilsFileError raisen.
vielen dank schonmal