Каждый виджет имеет список своих дочерних элементов, и с помощью рекурсии вы можете получить все виджеты.
from tkinter import Tk, Toplevel, Label
v = Tk()
v2 = Toplevel(v)
v3 = Toplevel(v2)
v4 = Toplevel(v2)
Label(v)
Label(v2)
Label(v3)
Label(v4)
def toplevels(ventana):
for k, v in ventana.children.items():
if isinstance(v, Toplevel):
print('Toplevel:', k, v)
else:
print(' other:', k, v)
toplevels(v)
toplevels(v)
Результат
Toplevel: !toplevel .!toplevel
Toplevel: !toplevel .!toplevel.!toplevel
other: !label .!toplevel.!toplevel.!label
Toplevel: !toplevel2 .!toplevel.!toplevel2
other: !label .!toplevel.!toplevel2.!label
other: !label .!toplevel.!label
other: !label .!label