¿Cómo ejecutar os.mkdir () con la opción -p en Python?

Quiero ejecutar el comando mkdir como:

 mkdir -p directory_name 

¿Cuál es el método para hacer eso en Python?

 os.mkdir(directory_name [, -p]) didn't work for me. 

Puedes probar esto:

 # 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 

Algo como esto:

 if not os.path.exists(directory_name): os.makedirs(directory_name) 

UPD: como se dice en los comentarios, debe buscar una excepción para la seguridad de subprocesos

 try: os.makedirs(directory_name) except OSError as err: if err.errno!=17: raise 

Según la documentación , ahora puedes usar esto desde Python 3.2

 os.makedirs("/directory/to/make", exist_ok=True) 

y no arrojará un error cuando exista el directorio.

Puedes path.mkdir(parents=True, exist_ok=True) si estás usando pathlib .

 from pathlib import Path directory = Path('./some/nested/directory') direcotry.mkdir(parents=True, exist_ok=True) 

parents=True crea los directorios principales que necesita y exist_ok=True le dice a mkdir() que no exist_ok=True error si el directorio ya existe. Consulte la documentación de pathlib.Path.mkdir .

¿qué tal este os.system('mkdir -p %s' % directory_name )