Descomprima archivos zip en carpetas y subcarpetas con python

Intento descomprimir 150 archivos zip. Todos los archivos zip tienen nombres diferentes, y todos se extienden en una carpeta grande que se divide en muchas subcarpetas y subcarpetas. Quiero extraer cada archivo a una carpeta separada con el mismo nombre que el nombre original del archivo zip y también en el mismo lugar que el archivo zip original. mi código es:

import zipfile    
import os,os.path,sys  

pattern = '*.zip'  
folder = r"C:\Project\layers"   
files_process = []  
for root,dirs,files in os.walk(r"C:\Project\layers"):  
    for filenames in files:  
        if filenames == pattern:  
            files_process.append(os.path.join(root, filenames))  
            zip.extract() 

Después de ejecutar el código, no pasó nada. Gracias de antemano por cualquier ayuda en esto.

Respuestas a la pregunta(3)

Su respuesta a la pregunta