Инструкции

Справочный раздел

В этом разделе Вы найдетё инструкции, справочники, и всевозможные хелпы по использованию программного обеспечения.

Разделы инструкций

В сети

Пользователей: 183
Из них просматривают:
Аналоги: 60. Видео: 3. Даташиты: 38. Инструкции: 4. Новости: 33. Остальное: 3. Партнёры: 1. Производители: 1. Профиль пользователя: 1. Расчёты: 1. Теги: 1. Форум: 37.
Участников: 1
Гостей: 182

Google , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

В настоящее время нет объявлений.
Оглавление

6.3. "Компилированные" файлы

Для ускорения запуска программ, использующих большое количество модулей, если уже существует файл с именем spam.pyc в том же каталоге, где найден spam.py, считается, что он содержит "байт-компилированный"” модуль spam. Если такого файла нет, то он создается, и время последнего изменения 'spam.py' записывается в созданном 'spam.pyc' (при последующем использовании, '.pyc' - файл игнорируется, если исходный '.py' - файл был изменён).

Обычно Вам не надо ничего делать для создания 'spam.pyc'. Как только 'spam.py' успешно откомпилирован, интерпретатор пытается записать компилированную версию в 'spam.pyc'. Если интерпретатору по каким-либо причинам это не удается (например, недостаточно пользовательских полномочий), ошибки не возникает. Если же файл записан не полностью, далее он распознается как неработоспособный и игнорируется. Содержимое байт-компилированных файлов является платформно-независимым (но может быть разным для разных версий интерпретатора), так что каталог с модулями может совместно использоваться машинами с разными архитектурами.

Несколько тонкостей для опытных пользователей:

1) Если интерпретатор вызывается с опцией -O или переменная окружения PYTHONOPTIMIZE имеет непустое значение, интерпретатор генерирует оптимизированный байт-код и сохраняет его в '.pyo' - файлах. В настоящий момент оптимизация даёт не слишком много: при этом удаляются инструкции assert, игнорируются инструкции 'if __debug__: ...', не сохраняется информация о нумерации строк в исходных '.py' - файлах. В этом случае оптимизируются все используемые модули, '.pyc' - файлы игнорируются.

2) Опция -OO приводит к тому, что интерпретатор выполняет оптимизацию которая, в некоторых (редких) случаях, может привести к сбоям в работе программ. В настоящий момент, помимо действий, выполняемых с опцией -O, удаляются строки документации, давая более компактные '.pyo' - файлы. Так как некоторые программы могут рассчитывать на наличие строк документации, используйте эту опцию с осторожностью.

3) Для программы, запускаемой из командной строки, байт-код никогда не записывается в '.pyc' - или '.pyo' - файл. Поэтому, если Вы хотите уменьшить время, требующееся для загрузки, поместите большую часть кода в модуль, оставив в программе лишь загрузочную часть, которая импортирует этот модуль.

4) Возможно использование модуля (или запуск программы) при наличии '.pyc' - файла (или '.pyo' - файла, если используется одна из опций -O или -OO), даже если отсутствует '.py' - файл. Таким образом, Вы можете распространять библиотеки и программы в виде, из которого относительно сложно извлечь информацию об используемых алгоритмах.

5) Модуль compileall позволяет создать '.pyc' - (или '.pyo') файлы для всех модулей в каталоге. Это может быть особенно полезно, если вы хотите ограничить доступ к каталогу, в котором находится библиотека. Заметим, что интерпретатор не будет использовать '.pyc' - файлы, если он запущен с включенной оптимизацией, и '.pyo' - файлы, если оптимизация выключена (если же отсутствует '.py' - файл, модуль окажется недоступным).

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.

Разное

Интересно

При замене электролитических конденсаторов, кроме соблюдения полярности, не следует значительно превышать допустимое рабочее напряжение.
Например, если конденсатор рассчитан на рабочее напряжение 16 В, то при установке нового той же емкости, но рассчитанного на напряжение 300 В после непродолжительной эксплуатации произойдет его расформовка, и емкость его значительно уменьшится.

Похожие инструкции