Мы можем написать кусок кода Python и поместить его в уже скомпилированный файл ".pyc" и использовать его.Мне интересно, есть ли какой-то выигрыш с точки зрения производительности, или это просто своего рода модульный способ группировки кода.
Большое спасибо
Нет увеличения производительности в течение вашей программы. Это только улучшает время запуска.
Программа не запускается быстрее, когда она читается из файла ".pyc" или Файл .pyo, чем когда он читается из файла .py; единственная вещь скорость работы с файлами «.pyc» или «.pyo» - это скорость, с которой они загружены.
http://www.network -theory.co.uk / документы / pytut / CompiledPythonfiles.html
А pyo-файлы, являющиеся следующей оптимизацией, просто удаляют строки doc из вашего кода.
Я не уверен насчет файлов .pyc (очень незначительным преимуществом является, по крайней мере, повторное создание файлов .pyc), но есть флаг '-O' для интерпретатора Python, который выдает оптимизированный байт-код (файлы .pyo).
На основании принятого ответа на этот вопрос: Почему основные исполняемые скрипты Python не скомпилированы в pyc-файлы, такие как модули? .
Когда модуль загружен, py-файл «компилируется» в pyc-файлы. Отметка времени записывается в файлах pyc. Это сделано не для того, чтобы сделать это бежать быстрее, но загружать быстрее
Да, просто потому, что при первом запуске файла .py он компилируется в файл .pyc. Таким образом, в основном вы должны добавить время компиляции. После этого всегда следует использовать файл .pyc.
Вы получите долю секунды, которая потребовалась среде исполнения Python для анализа и компиляции источника в байт-код, что происходит только при первом запуске / импорте.
Вы потеряете переносимость.
См. здесь .