2016-03-09 5 views
1

Я хотел бы использовать функции radians и degrees от модуля numpy. Однако numpy это чертов огромный, и я не хочу, чтобы импортировать все это, то есть:Явно импортировать только некоторые объекты из модуля

import numpy as np 

Я могу сделать это обычным способом:

from numpy import radians, degrees 

Однако я предпочитаю синтаксис np.degrees из-за его ясности.

Вот как я это делал; в основном я импортировать объекты/функции я хочу от модуля, а затем создать «манекен» np объект, в котором хранится импортированные объекты/функции:

from numpy import radians, degrees 
np = type('', (object,), dict(radians = radians, degrees = degrees)) 
del degrees 
del radians 

Кажется, как будто там должно быть лучше, более простой способ сделать это. Что это?

ответ

3

import numpy as np не медленнее from numpy import radians, degrees. Оба сначала оценивают весь модуль; единственная разница заключается в том, что впоследствии добавляется в глобальное пространство имен модуля импорта. (Во всяком случае, второй медленнее, потому что он добавляет два элемента в пространстве имен, а не только один.)

Таким образом, просто использовать import numpy as np, и не беспокоиться о вещах, которые вы не используете.

+0

После небольшого тестирования ясно, что вы абсолютно правы. –

Смежные вопросы