Voglio correre mkdir
comando come:Come eseguire os.mkdir() con l'opzione -p in Python?
mkdir -p directory_name
Qual è il metodo per farlo in Python?
os.mkdir(directory_name [, -p]) didn't work for me.
Voglio correre mkdir
comando come:Come eseguire os.mkdir() con l'opzione -p in Python?
mkdir -p directory_name
Qual è il metodo per farlo in Python?
os.mkdir(directory_name [, -p]) didn't work for me.
Si può provare questo:
# top of the file
import os
import errno
# the actual code
try:
os.makedirs(directory_name)
except OSError as exc:
if exc.errno == errno.EEXIST and os.path.isdir(directory_name):
pass
exc non ha attributo errno. – pynovice
Si deve aggiungere all'inizio del codice 'import errno' –
Questo dovrebbe essere os.mkdirs (il finale s è importante), ma SO non mi permette di inviare una modifica così piccola. –
Qualcosa di simile a questo:
if not os.path.exists(directory_name):
os.makedirs(directory_name)
UPD: come si dice in un commento è necessario verificare la presenza di un'eccezione per la sicurezza dei thread
try:
os.makedirs(directory_name)
except OSError as err:
if err.errno!=17:
raise
Questa è una condizione di razza intrinseca 7 e quindi una * pessima idea. – Voo
questo è soggetto a condizioni di gara. Ad esempio, se qualche altro processo/thread crea 'directory_name' dopo' if' ma prima di 'os.mkdirs', questo codice genererà un'eccezione –
come circa questo os.system('mkdir -p %s' % directory_name)
os.makedirs provare ('/ multipla/path /') – rajpy
duplicato: http://stackoverflow.com/questions/600268/mkdir-p-functionality-in-python?rq=1 –
Possibile duplicato [Funzionalità mkdir -p in Python] (http://stackoverflow.com/questions/600268/mkdir-p-functionality-in-python) –