2013-12-06 3 views
0

Это продолжение моего previous question, где было не совсем ясно, что я хочу делать. Теперь найдите Full code here Я знаю, что этот код очень груб, поскольку я новичок в программировании. Я уверен, что этот код может быть написан другим способом более оптимально, но я не настолько опытен. Теперь мой вопрос: я буду запускать этот код из оболочки Python.Python Продолжайте цикл от начала, когда условие ложно

while 1 ==1: 
    execfile('adhocTest.py') 

Этот код состоит из двух частей 1. Предпосылка 2. Основная программа.

Необходимым условием является скопировать шаблонный файл Excel и вставить его в каталог. Основная программа - выполнить некоторую операцию, и результат должен быть записан в этот файл и проверять несколько ячеек. Если условие истинно, основная программа продолжит работу еще раз. Я хочу, чтобы весь скрипт запускался снова. Запустите предварительный вариант, а также основную программу. Я сейчас на этом этапе, если условие ложно, оно выходит из всего скрипта.

Как я уже сказал, этот код является грубым, если кто-нибудь поможет мне его оптимизировать. Я буду очень рад. Но это вторично. Мне нужен непрерывный запуск этого скрипта, когда условие ложно.

+0

1 всегда будет равным 1, так как ваше состояние может быть «ложным»? –

+0

Условие находится в основной() программе. Условие while 1 == 1 - продолжить мой цикл извне, когда я говорю о состоянии в main() программе, я ссылаюсь на функцию check(), которая запускается основной программой – just10minutes

ответ

0

Вам необходимо реструктурировать свою программу:

def call_me(): 
    while True: 
     prerequisite() 
     main_operations() 
     if validate(): 
      main_continuing() 

или

def call_me(): 
    while True: 
     prerequisite() 
     while validation(): 
      main_operations() 

Это будет петля вокруг, как вам это нужно.

+0

Я буду реструктурировать и сообщать вам – just10minutes

+0

Будет ли возможно для вас, чтобы посмотреть на код? Я знаю, что он длинный, но если вы дадите ответ в соответствии с этим, это будет действительно здорово. В соответствии с приведенным выше предложением, в то время как Validation() здесь, какая проверка должна произойти? FYI: Я не поставил prequisite под любую функцию, поскольку результат этого используется позже в основной программе. Извините за то, что я немой программист – just10minutes

+0

Что я написал, это псевдокод; Я предлагаю общую структуру, как вы ее реализуете, зависит от вас. Я не знаю, какую проверку вы требуете, но предлагайте вам обернуть ее в функцию, которая возвращает True (продолжить) или False (цикл к следующему файлу). Если вам нужно что-то из предпосылки, вы можете вернуть его из функции. – jonrsharpe

Смежные вопросы