2014-07-22 5 views

답변

4

다음과 같이 파일 시스템 레이아웃을 만들었습니다.

[9:29pm][[email protected] layout] tree 
. 
├── __init__.py 
└── sklearn 
    ├── __init__.py 
    └── svm 
     └── __init__.py 

[9:31pm][[email protected] layout] cat __init__.py 
[9:31pm][[email protected] layout] cat sklearn/__init__.py 
[9:31pm][[email protected] layout] cat sklearn/svm/__init__.py 
def LinearSVC(): 
    pass 

하자 실행 python는 :

[9:29pm][[email protected] layout] python 
Python 2.7.5 (default, Mar 9 2014, 22:15:05) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import sklearn 
>>> sklearn.svm 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
AttributeError: 'module' object has no attribute 'svm' 

>>> import sklearn.svm 
>>> sklearn.svm.LinearSVC() 
>>> 

종종, 파이썬 라이브러리 디자이너는이 문제를 해결 sklearn/__init__.py이 라인 import svm을 포함 할 필요에 의한 것입니다. SVM은 sklearn의 변수는 OR SVM 번째 코드 만 sklearn 수입 SVM 경우 작동

from sklearn import svm 

sklearn의 서브 모듈이며, 그 공간의 변수로 보유하는 경우

+0

'__init __. py' 파일의 기능을 설명 할 수 있습니까? – Tim

+1

@Tim : http://stackoverflow.com/questions/448271/what-is-init-py-for –

0

첫 번째 코드는 작동

import sklearn 
sklearn.svm.LinearSVC() 
관련 문제