Файлы с байткодом действительно создаются только для импортированных модулей?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Файлы с байткодом действительно создаются только для импортированных модулей?

Сообщение Anonymous »


В моей системе я создал приложение Python, состоящее из нескольких файлов. Структура каталогов приложения следующая:

каталог_приложения |- файл_a.py |- файл_b.py |- файл_c.py Внутри скрипта file_c.py присутствуют следующие импорты:

импортировать file_a из file_b импортировать ClassB Когда я выполняю скрипт file_c.py из командной строки:

python3 file_c.py в папке application_folder создается каталог с именем __pycache__, и внутри него я нахожу два файла, содержащие байт-код Python и называемые:

__pycache__/file_a.cpython-310.pyc __pycache__/file_b.cpython-310.pyc Примечание. Я прочитал эту и другую ссылку, чтобы получить информацию о концепциях компиляции в Python, байт-коде и интерпретаторе Python как виртуальной машины.

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

В ответе присутствует следующее предложение:

Запуск скрипта не считается импортом, и .pyc не будет создан.

Так вот я и спрашиваю: только для импортированных модулей создается файл с байткодом? Почему существует такая разница в управлении импортированными модулями и неимпортированными скриптами?

ИЗМЕНИТЬ Я нашел этот другой ответ очень полезным, чтобы лучше понять, как работает CPython, концепция байт-кода и файл .pyc, сохраненный на жестком диске.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Поиск пути к файлам модулей, импортированных другим файлом
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Как я могу заставить Python ScriptEngine очистить кеш импортированных модулей?
    Anonymous » » в форуме JAVA
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Как я могу заставить Python ScriptEngine очистить кеш импортированных модулей?
    Anonymous » » в форуме Python
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Как мне создать предварительно скомпилированные файлы для модулей и модулей заголовков с помощью gcc и make?
    Гость » » в форуме C++
    0 Ответы
    91 Просмотры
    Последнее сообщение Гость
  • Создаются основные файлы, как это остановить?
    Anonymous » » в форуме Linux
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»