Tengo un problema con la importación del paquete scipy.special
. No es dañino, solo molesto/interesante.scipy.special número de importación
Cuando importo scipy usando import scipy as sp
y luego tratar de acceder sp.special
me sale:
>>> import scipy as sp
>>> sp.special
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'special'
>>>
pero si a continuación, haga import scipy.special
puedo acceder al módulo especial a través de scipy.special
y sp.special
:
>>> import scipy as sp
>>> import scipy.special
>>> scipy.special
<module 'scipy.special' from 'C:\Python27\lib\site-packages\scipy\special\__init__.pyc'>
>>> sp.special
<module 'scipy.special' from 'C:\Python27\lib\site-packages\scipy\special\__init__.pyc'>
>>>
Así que ahora tengo el módulo special
accesible a través de los espacios de nombres sp
y scipy
. Lo interesante es que puedo acceder al resto de scipy a través del espacio de nombres scipy
.
Primera pregunta: ¿Por qué el módulo special
no se importa la primera vez?
Segunda pregunta: ¿Cómo puedo obtener acceso al módulo special
a través del espacio de nombre sp
solamente, sin definir el espacio de nombre scipy
?
Editar: usando Python 2.7.2 y 0.10.1 scipy
Gracias, lo tendré en cuenta en el futuro. ¿Hay algún lugar en los documentos que explícitamente declara esto? No puedo ver ese comentario en el documento [API] (http://docs.scipy.org/doc/scipy-0.10.1/reference/api.html) –
Sé que es un comentario antiguo, pero es sigue siendo una pregunta frecuente, así que aquí hay un recurso: http://docs.scipy.org/doc/scipy/reference/api.html#guidelines-for-importing-functions-from-scipy –