Самый простой способ - использовать shutil.make_archive
. Он поддерживает форматы zip и tar.
import shutil
shutil.make_archive(output_filename, 'zip', dir_name)
Если вам нужно сделать что-то более сложное, чем архивирование всего каталога (например, пропуск определенных файлов), то вам нужно будет покопаться в модуле zipfile
, как предлагали другие. .
Попробуйте windowComplete
вместо creationComplete
. Также:
[Если] вы пытаетесь добавить eventСлушатели на сцену прямо из начало вашего приложения выполнение, это будет работать только с updateComplete () и applicationComplete ().
Источник: http://www.wietseveenstra.nl/blog/2007/02/understanding-the-flex-application-startup-event-order/
Попробуйте добавить прослушиватель событий для Event.ADDED_TO_STAGE
или mxml-атрибута addedToStage
. Тогда вы сможете ссылаться на сцену.
Это короткий способ написания if
предложений. Он также используется в других языках, таких как Java, JavaScript и др.
Ваш код,
$protocol = $request_type == 'SSL' ? HTTPS_SERVER : HTTP_SERVER;
может быть записан следующим образом:
В целях безопасности как в веб-приложениях, так и в приложениях AIR я обычно использую событие applicationComplete
, чтобы отметить завершение цикла запуска, прежде чем искать объект stage
. Из документации:
После того, как все компоненты созданы и нарисовано, объект Application отправляет заявку мероприятие. Это последнее мероприятие отправлено во время подачи заявки запуск.
Если вы дождетесь applicationComplete
, вы можете быть уверены, что для вас все готово.