2017-01-29 3 views
0

Похоже, что в прошлом IDLE не перезапускался (очищайте среду) при запуске скрипта (модуля). Однако сегодня это так. Но для прототипирования я бы хотел, чтобы среда (назначенные переменные, импортированные модули, функции, ...) выдержала запуск разных модулей (файлов).Запустите модуль в IDLE (Python 3.4) без перезагрузки

Пример: Я работаю над функцией, назовем ее f7(), для которой требуется определенная среда. Окружающая среда построена в другом скрипте (файле), скажем, env1.py. После запуска env1.py я могу построить все импортированные модули, определенные функции и назначенные переменные, работая в командной строке IDLE. Но я не могу запустить другой файл, где находится мой f7()! Мне нужно было бы переопределить f7() в командной строке интерпретатора. Который я, конечно, не делаю, потому что f7() очень длинный. Остается только включить f7() в env1.py. И перезапустите его после каждого изменения в f7(). Как следствие, я должен ждать каждый раз, пока не закончится env1.py. Это пустая трата времени, потому что каждый раз, когда она работает, она делает то же самое. Я меняю только f7() ...

Могу ли я сообщить IDLE, чтобы он не перезапускался (чистая среда) при каждом запуске модуля (файла) в IDLE? Если нет, то какие альтернативы IDLE способны на что-то подобное? Кажется, что IDLE ведет себя одинаково в Windows, Ubuntu, Raspbian. Я использую Python 3.X для каждой из этих систем.

+0

импортировать файлы (env1.py) из IDLE и запускать там файлы, вы можете импортировать столько, сколько хотите. – kda

ответ

0

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

В то же время вы можете сделать это для конкретного сценария, который вы дали. Загрузите env1.py в окно редактора и запустите его. Когда появится >>>, введите или вставьте инструкцию def для f7 и запустите ее. (Вставьте после загрузки файла с помощью f7 и скопируйте.) Протестируйте, вызвав f7. Чтобы отредактировать определение f7, назовите его текущей линией >>>. Или нажмите на предыдущее определение и нажмите Enter или воспользуйтесь сочетаниями клавиш истории (для меня в Windows, Alt-P для Previous, Alt-N для Next). В любом случае отредактируйте и повторно запустите. Сделайте то же самое с тестовыми утверждениями. Я постоянно повторяю и редактирую заявления.

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