Python à l'exception de l'entrée seulement si dans la gamme

Salut, je veux obtenir un nombre à l'utilisateur et uniquement, à l'exception de l'entrée dans une certaine plage.

Ci-dessous semble fonctionner, mais je suis un noob et de la pensée, alors qu'il fonctionne, il y a sans doute le plus bel exemple... juste essayer de ne pas tomber dans de mauvaises habitudes!

Une chose que j'ai remarqué que lorsque je lance le programme CTL+C ne cassera pas à me sortir de la boucle et soulève l'exception de la place.

while True:
  try:
    input = int(raw_input('Pick a number in range 1-10 >>> '))
    # Check if input is in range
    if input in range(1,10):
      break
    else:
      print 'Out of range. Try again'
  except:
    print ("That's not a number")

Toute aide grandement appréciée.

Il semble que deux choses complètement distinctes des questions... Il est préférable de poser une question à la fois. Si vous obtenez deux réponses: l'une à la première question, et un autre pour la seconde, comment savez-vous qui à accepter?
Savez-vous que range(1,10) ne comprend pas 10? Votre raw_input texte suggère que vous pourriez voulez que 10 pour être acceptable.
Oui je savais que 10 était hors de la plage, mon erreur a été d'inclure dans le raw_input déclaration. Désolé rapidement mettre les valeurs à titre d'exemple. Merci.

OriginalL'auteur hemmy | 2012-07-21