Salve a tutti,
sono un neofita ovviamente.
Ho trovato questo esercizio su un testo che sto studiando,qualcuno mi aiuta a risolverlo?

"Script che indicizza tutti i file di una specifica direcotry fornita da utente.
Deve costruire un dizionario in cui le chiavi sono tutte le parole univoche di tutti i file
(descritte dall’espressione regolare r"w+" , trattando le parole senza distinguere fra lettere maiuscole e minuscole),
e il valore di ogni voce e' una lista di nomi di file che contengono tale parola.

Per esempio,se la parola aloha è menzionata nei file early-internet.dat e hawaiian-travel.txt,
il dizionario dovrà contenere la voce:
{..., 'aloha': ['early-internet.dat', 'hawaiian-travel.txt'],...}."

Non so bene come collegare la lista di parole univoche con le chiavi del dizionario ed associare la lista dei files a cui appartengono.
Per ora ho fatto questo:

for root, dirs, files in os.walk(path):

for name in files:

# Apro file
file = open(os.path.join(path,name))

# Divido il file in una lista di parole
wordss = re.findall(r"\w+",file.read())

# Elimino dalla lista di parole i duplicati
wordss = list(set(wordss))

# Ottengo un dizionario dalla lista parole non duplicare del file
diz = dict(enumerate(wordss))

# Creo un dizionario con le keys che corrispondono ai values di diz e con values nome file usato
for v in diz.values():
d[v]=name

Adesso ho n dizionari comporti da chiave=parola_univoca valore=nome_file.

Come faccio ad unire questi N dizionari in un unico dizionario strutturato come spiegato?

Cioè con chiave = parola_univoca valore = lista_file_di_appartenenza ?