Como criar um evento para a entrada do usuário?

Como parte do meu programa, estou solicitando ao usuário o nome e a turma deles (turma do ensino médio). Eu estou usando uma função de entrada de texto que aceita com sucesso a entrada, mas eu preciso de ajuda na validação: Eu só quero que o botão 'Enter' fique ativo quando o usuário começar a digitar, caso contrário o usuário pressionará o botão 'Enter' e desativá-lo. Além disso, gostaria de ter certeza de que, quando eles digitarem o nome deles, o programa aceitará apenas letras e nenhum número. Para a segunda entrada (classe da turma / turma de tutor), o usuário digitará algo como 6A1, que é sua turma. Existem cerca de 10 turmas sénior diferentes na minha escola. Como é que posso validar a entrada para aceitar apenas 1 destas 10 turmas ou talvez um menu suspenso? Ajuda seria muito apreciada :)

class Enter_Name_Window(tk.Toplevel):
    '''A simple instruction window'''
    def __init__(self, parent):
        tk.Toplevel.__init__(self, parent)
        self.text = tk.Label(self, width=40, height=2, text= "Please enter your name and class." )
        self.text.pack(side="top", fill="both", expand=True)

        enter_name = Entry(self)
        enter_name.pack()
        enter_name.focus_set()


        def callback():
            self.display_name = tk.Label(self, width=40, height=2, text = "Now please enter your tutor group.")
            self.display_name.pack(side="top", fill="both", expand=True)
            tutor = Entry(self)
            tutor.pack()
            tutor.focus_set()
            Enter_0.config(state="disabled")

            Enter_0_2 = Button(self, text="Enter", width=10, command=self.destroy)
            Enter_0_2.pack()


        Enter_0 = Button(self, text="Enter", width=10, command=callback)
        Enter_0.pack()

questionAnswers(1)

yourAnswerToTheQuestion