Seguro que, como yo, te has encontrado en la necesidad de crear directorios recursivos (es decir, directorios unos dentro de otros) con tu código en Python. Hasta ahora yo creaba un directorio con os.mkdir y los demás dentro de él también con os.mkdir. Así, los tenía que crear por separado.
Resulta que, con una pequeña búsqueda en google, hoy encontré una forma muy sencilla de ahorrar trabajo y hacer esos directorios anidados todos de una vez. Es muy sencillo y comparto aquí el código, por si has llegado aquí buscando lo mismo. Supongamos que tienes una carpeta en tu disco duro C que se llama directorioprincipal. Dentro de esa carpeta quieres crear otras dos, de manera que la estructura sería C:/midirectorioprincipal/nivel1/nivel2/
nivel1 y nivel2 pueden ser variables, por ejemplo, elementos de una lista. Ahí ya depende de tus necesidades. Así, tendrás que construir directorio de manera igual o similar a como lo he hecho yo aquí.
import os
directorio_principal = "C:/midirectorioprincipal/"
directorio = str(nivel1)+'/'+str(nivel2)
ruta = os.path.join(directorio_principal, directorio)
os.makedirs(ruta, exist_ok=True)
Y ya está, la clave es ese os.makedirs(ruta, exist_ok=True), que a mí me ha resuelto la vida en mis códigos. Espero que a ti también te ayude.
Sé el primero en comentar