Ответ - да, но это, вероятно, немного преждевременная оптимизация.
Лямбда состоит из двух частей:
- Передача, сборка и запуск контейнера для каждого одновременного выполнения
- Запуск кода для каждого выполнения
.pyc
файлы предлагают вам некоторую оптимизацию 1, или время «холодного запуска». Это потому, что вы можете отправлять только pyc
файлы, и они имеют тенденцию быть меньше (сокращая время передачи), а также потому, что вы уже скомпилировали в байт-код, что отнимает шаг процесса сборки (обратите внимание, что python все еще компилируется, но это, тем не менее, оптимизация).
Честно говоря, я был бы удивлен, если бы это имело достаточно различий, чтобы оправдать дополнительную сложность при развертывании и результирующую непрозрачность кода в лямбда-консоли. И поэтому я бы попросил вас профилировать, используя что-то вроде X-Ray, прежде чем начинать оптимизацию по сравнению с чем-либо в вашем реальном коде.
(примечание. В MapBox есть хорошая статья об уменьшении размера и обсуждении эффекта развертывания .pyc
: https://blog.mapbox.com/aws-lambda-python-magic-e0f6a407ffc6)