¿Otra declaración después de la declaración while y comparación de cadenas con una lista de cadenas?

Estoy intentando crear un pequeño script de prueba que agrega algo a una nota. A continuación se incluye la función principal que ejecutaré en el script. El problema parece ser que no puedo obtener elelse bloque para correr cuando elwhile el bloque se evalúa como falso (es decir, cuando se evalúa cualquier cosa que no sea una de esas cuatro opciones), elwhile El bloque simplemente continúa en un bucle infinito. También he intentado insertar unbreak en el bucle while, pero esto termina el script después dewhile El bucle se ha ejecutado.

¿Cómo me muevo delwhile alelse bloquear cuando se evalúa como falso? ¿Y por qué la forma actual en que hago las cosas no funciona como me gustaría? Gracias.

def start():
    q01 = input("What is the subject of your note?\n")
    q02 = input("Are you certain that the subject of your note is " + q01 + "?\n")
    while q02 == 'No' or 'no' or 'NO' or 'n':
       q01 = input("So, what is the subject of your note?\n")
       q02 = input("Are you certain now that the subject of your note is " + q01 + "?\n")
    else:
       q03 = Enter("Enter the content of your note")

Respuestas a la pregunta(4)

Su respuesta a la pregunta