Как разрешить повторение raw_input, пока я не захочу выйти?

Скажем, я хочу использовать raw_input вот так:

code = raw_input("Please enter your three-letter code or a blank line to quit: ")

под:

if __name__=="__main__": 

Как я могу позволить ему повторяться несколько раз, а не только один раз при каждом запуске программы?
Другой вопрос заключается в том, чтобы написать, какой код может удовлетворять условию «или пустая строка для выхода (программы)».


person timy    schedule 23.11.2009    source источник


Ответы (1)


Лучший:

if __name__ == '__main__':
  while True:
    entered = raw_input("Please enter your three-letter code or leave a blank line to quit: ")
    if not entered: break
    if len(entered) != 3:
      print "%r is NOT three letters, it's %d" % (entered, len(entered))
      continue
    if not entered.isalpha():
      print "%r are NOT all letters -- please enter exactly three letters, nothing else!"
      continue
    process(entered)
person Alex Martelli    schedule 23.11.2009