Вы действительно жертвуете огромным количеством переносимости таким образом - прямо сейчас .pyc
файлы необычайно переносимы (часто используются гетерогенными системами в локальной сети через какое-то сетевое устройство файловой системы, например, хотя яникогда не был поклонником характеристик производительности этого подхода), в то время как ваш подход будет работать только на очень специфических файловых системах и (я подозреваю) никогда не подключаться к сети при гетерогенных машинах.
Так что это будет ужасноОшибка сделать поведение, которое вы хотите, по умолчанию - но было бы неплохо иметь его как параметр , доступный для конкретного запроса, если ваша среда развертывания не заботится обо всех вышеперечисленных проблемах и делаетзаботиться о некоторых из тех, кого вы упоминаете.Другой «крутой вариант», который я на самом деле использовал бы примерно в 100 раз чаще, - это помещать .pyc
«файлы» в базу данных вместо того, чтобы иметь их в файловых системах.
Круто то, что это (относительно) легко сделать как «взломать импорт» тем или иным способом (в зависимости от версии Python) - наиболее легко в достаточно недавних версиях с importlib ,Шедевр Бретта Кэннона (но это может сделать бэкпорт к более старым версиям Python сложнее, чем другими способами ... слишком многое зависит от того, какие именно версии вам нужно поддерживать, подробности, которые я не вижу в вашем вопросе, поэтому я не буду переходитьв детали реализации, но общая идея не сильно меняется в зависимости от реализации).