Является ли while True: подходящим способом повторить блок до достижения принятого случая? - PullRequest
3 голосов
/ 26 июля 2010

Является ли while True приемлемым методом зацикливания блока кода до достижения принятого случая, как показано ниже? Есть ли более элегантный способ сделать это?

while True:
    value = input()
    if value == condition:
        break
    else:
        pass
# Continue code here.

Спасибо за любой вклад.

Ответы [ 2 ]

8 голосов
/ 26 июля 2010

Это способ сделать это в Python.Вам не нужен бит else: pass.

Обратите внимание, что в Python 2.x вы, скорее всего, захотите raw_input, а не input.

0 голосов
/ 26 июля 2010

Если это детерминированный, то да. Если он не является детерминированным (что означает, что вы можете застрять в цикле навсегда при некоторой статистической вероятности), то нет.

Если вы хотите сделать его немного более чистым и более легким для отладки при увеличении размера кода, используйте логическое или целое число, чтобы указать состояние вашего цикла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...