как перебрать все файлы в папке ( в папке может быть другие папки и в них тоже нужно перебрать ) Python

Мне нужно получать все файлы в выбранной директории, но иногда в папке есть другие папки из которых тоже надо получить файлы. Помогите дополнить/переделать этот кусок кода:

def takeFiles():
    global file, name
    try:
        filesindir = os.listdir(directory)
        for filesindirs in filesindir:
            path = os.path.join(filesindirs)
            file = os.path.join(str(directory), path)
            func(True)
        nm.lineEdit.clear()
        ui.lineEdit.clear()
        ui.lineEdit_2.clear()
        name = ""
        ms_box(APP_NAME, "Done!", "info")
    except Exception as exp:
        ms_box(APP_NAME, str(exp), "err")

Ответы (1 шт):

Автор решения: Slayer Leon
import os
os.walk("Здесь должна быть нужная директория")
→ Ссылка