Obtenir un rapport d'essai de la boucle jusqu'à ce que la valeur obtenue

Je vais essayer d'aller à un utilisateur d'entrer un nombre entre 1 et 4. J'ai ce code pour vérifier si le numéro est correct, mais je veux le code de la boucle autour de plusieurs fois jusqu'à ce que le nombre est correct. Personne ne sait comment faire cela? Le code est ci-dessous:

def Release():


    try:
        print 'Please select one of the following?\nCompletion = 0\nRelease ID = 1\nVersion ID = 2\nBuild ID = 3\n'
        a = int(input("Please select the type of release required: "))
        if a == 0:
            files(a)
        elif a == 1:
            files(a)
        elif a == 2:
            files(a)
        elif a == 3:
            files(a)
        else:
            raise 'incorrect'
    except 'incorrect':    
        print 'Try Again'
    except:
        print 'Error'

Release()

Je suis aussi d'avoir une erreur à propos de l'exception que j'ai entré:

kill.py:20: DeprecationWarning: catching of string exceptions is deprecated
  except 'incorrect':
Error

Merci pour toute aide

C'est vraiment une mauvaise conception, une mauvaise saisie de l'utilisateur ici n'est pas vraiment une exception.
Double Possible de Comment faire pour recommencer après exception?

OriginalL'auteur chrissygormley | 2010-02-11