Я только что понял, что import talib не импортирует модуль abstract - мне нужно сделать from talib import abstract. Это почему? Я бы подумал, что import talib импортирует все, что есть, не так ли?
Это выбор дизайнеров языка Python. В других языках это может быть иначе, но в Python это так. В любом случае есть свои плюсы и минусы. Вероятно, есть список причин, по которым Python делает это таким образом, но StackOverflow на самом деле не место для их обсуждения.
Такие вопросы «почему» плохо подходят для Stack Overflow, потому что мы должны угадывать мотивацию разработчиков языка. Тем не менее, соответствующий документация довольно прост. Вы также можете найти stackoverflow.com/questions/36515197/… релевантным.






Почему по умолчанию следует заполнять вашу память и пространство имен? Тогда не было бы даже способа предотвратить загрузку всего пакета в память.