Borrar carpetas de forma recursiva en Python

Cómo utilizar los módulos os y shutil para poder tener diferentes formas de borrar carpetas de forma recursiva en Python para directorios no vacíos.

Línea de Código