Модификация цикла на основе проверки условий - PullRequest
1 голос
/ 26 марта 2019

Во время запуска программы загружается значение конфигурации, которое изменяет скорость итерации цикла.

Например:

delay = config["delay"]

while True:
    if delay != 0:
        time.sleep(delay)

Как я могу проверить, существует ли значение только один раз за пределами цикла?Я хочу избежать ненужных проверок условий во время каждой итерации.

Ответы [ 2 ]

0 голосов
/ 26 марта 2019

Я хочу верить, что «while true» проверяет что-то отличное (что вы не указали выше) от того, что проверяет оператор «if».Если это приведение, вы можете начать с оператора if перед циклом while.Я считаю, что если они оба проверяют одно и то же условие, в то время как истина уже означает, что задержка не равна нулю (задержка! = 0).Надеюсь, я не поняла ваш вопрос?

0 голосов
/ 26 марта 2019

Просто поставьте чек вне цикла:

delay = config["delay"]

if delay != 0: 
    while True:
        time.sleep(delay)

Или более кратко:

while delay != 0:
    time.sleep(delay)
...