tkinter: cómo usar después del método

Hola, soy nuevo en Python y estoy usando tkinter para mi interfaz gráfica de usuario. Tengo problemas para usar el método "después". El objetivo es hacer que aparezca una letra aleatoria cada 5 segundos.

Aquí está mi código:

import random
import time
from tkinter import *


root = Tk()

w = Label(root, text="GAME")
w.pack()

frame = Frame(root, width=300, height=300)
frame.pack()

L1 = Label(root, text="User Name")
L1.pack(side=LEFT)
E1 = Entry(root, bd =5)
E1.pack(side=LEFT)


tiles_letter = ['a', 'b', 'c', 'd', 'e']


while len(tiles_letter) > 0:
    rand = random.choice(tiles_letter)
    tile_frame = Label(frame, text=rand)
    tile_frame.pack()
    frame.after(500)
    tiles_letter.remove(rand)  # remove that tile from list of tiles

root.mainloop()

alguien puede ayudarme --- el problema es definitivamente frame.after (500): no estoy seguro de si es correcto usar "frame" y no sé qué argumento sigue al 500.

Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta