2013-08-22 5 views
1

업데이트 :얻기 형식 오류() : test_if_module_exists() nosetests를 실행

from scitools.std import * 

예컨대을 변경하는 경우

from scitools.std import sqrt, zeros 

모든 작동합니다 ..

내가 nosestests -s myfile.py을 실행하기 위해 노력하고있어,하지만 난이 오류를 항상 받고 있어요 :

====================================================================== 
ERROR: Test if modulename can be imported, and if not, write 
---------------------------------------------------------------------- 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/nose/case.py", line 197, in runTest 
    self.test(*self.arg) 
    File "/usr/local/lib/python2.7/dist-packages/nose/util.py", line 613, in newfunc 
    return func(*arg, **kw) 
TypeError: test_if_module_exists() takes at least 1 argument (0 given) 

프로그램 :

from scitools.std import * 
import nose.tools as nt 

def test_test(): 

    diff = 1E-6 
    nt.assert_almost_equal(diff, 0, delta=1E-5) 

def main(): 
    print __name__ 

if __name__ == "__main__": 
    main() 

나는 코 1.3.0을 실행하는거야. 인터넷을 통해 솔루션 전체를 검색 한 결과 찾을 수 없습니다!

고마워요!

+0

'myfile.py'코드 없이는 말할 수 없습니다. 제공 부탁드립니다. – alecxe

+0

물론입니다. – joakibo

+0

코드가 오류 메시지와 일치하지 않습니다. 일치하는 코드와 오류 메시지를 입력하십시오. – dbn

답변

1

와일드 카드 가져 오기를 사용하기 때문에 ... 그나마 사용 와일드 카드!

당신은

from scitools.stf import * 

또한 가져 오는 모든 것을에서 말하는 기본적 때 코가 작동

  • scitools.easyviz
  • scitools.basics

방법을라는 이름의 모든 함수를 찾습니다. 10. 여기에는 작성한 모든 기능과 가져온 모든 기능이 포함됩니다. 이를 Duck typing이라고합니다. 당신이 코를 실행하려고하지 않는 기능이 있다면 그래서, 망가은를 가져옵니다. 당신이 와일드 카드 가져 오기를 사용했을 때, 와일드 카드를 사용하는 것은 좋지 않습니다 왜 대부분의 모든 것을을 가져.

from scitools.std import sqrt, zeros