2015-05-08 2 views
2

Почему это не работает:питон только импорт не удается, но работает с от

import matplotlib.pyplot as plt 
import os 
import skimage 
camera = skimage.io.imread(os.path.join(skimage.data_dir, 'camera.png')) 
#plt.show(io.imshow(camera)) 

Но использование from skimage import io делает. Так это работает:

import matplotlib.pyplot as plt 
import os 
import skimage # I still need to import skimage to get the data_dir 
from skimage import io 
camera = io.imread(os.path.join(skimage.data_dir, 'camera.png')) 
#plt.show(io.imshow(camera)) 

Я думал

import skimage 
skimage.io."something" 

был эквивалентен

from skimage import io 
io."something" 

ответ

3

Я думал

import skimage 
skimage.io."something" 

был эквивалентен

from skimage import io 
io."something" 

Это не так.

import skimage 

вызывает python для поиска модуля skimage. Возможно, есть __init__.py, который настраивает то, что становится видимым и что делается при импорте этого модуля.

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