Каков приоритет скомпилированных файлов Python при импорте? - PullRequest
10 голосов
/ 05 июля 2011

Файлы Python компилируются в байт-код (* .pyc).

Используя Cython, вы можете скомпилировать их в машинный код (* .so в Linux).

Если вы используете, чтобы оба файла находились в одной папке, под одним и тем же именем, какой приоритет между ними?

Существует ли автоматический способ обеспечить использование файла * .so вместо файла * .pyc? Или вы должны сделать это явно в коде (переименование и т. Д.)?

1 Ответ

9 голосов
/ 05 июля 2011

Python сначала загрузит файл .so. См. этот вопрос для упорядоченного списка суффиксов, которые ищет python.

Хорошо, я просто скажу вам:

foo (a directory)
foo.so
foomodule.so
foo.py
foo.pyc
...