2016-09-14 5 views
0

Python 3.3.5에서 ipdb (IPython 사용 가능 pdb)를 설치하고 사용하려고합니다. PIP 8.1.2."import ipdb"를 통해 디버깅 세션을 준비하는 동안 이름 오류 : 이름 'get_ipython'이 정의되지 않았습니다 "

내가 '테스트'문자열을 인쇄하기 전에 디버거를 중지 기대 간단한 테스트 스크립트를 작성
pip install ipdb 

, ipdb_test.py : 나는 PIP를 통해 설치 한 오류없이 cmd를 창에 (seprately 설치했다) :

import ipdb 
ipdb.set_trace() 
print('test') 

하는 IDLE 편집기에서 실행하면 다음과 같은 예외가 표시 :

Traceback (most recent call last): 
    File "C:\Python33.5-32\lib\site-packages\ipdb\__main__.py", line 44, in <module> 
    get_ipython 
NameError: name 'get_ipython' is not defined 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
    File "C:/temp/ipdb_test.py", line 1, in <module> 
    import ipdb 
    File "C:\Python33.5-32\lib\site-packages\ipdb\__init__.py", line 7, in <module> 
    from ipdb.__main__ import set_trace, post_mortem, pm, run    # noqa 
    File "C:\Python33.5-32\lib\site-packages\ipdb\__main__.py", line 51, in <module> 

    (...) 

    File "C:\Python33.5-32\lib\site-packages\prompt_toolkit\terminal\win32_output.py", line 266, in flush 
    self.stdout.flush() 
AttributeError: 'NoneType' object has no attribute 'flush' 

답변

0

ISSU으로 e는 IPython과 관련있는 것으로 보였습니다. ipdb 의존성을 해결하는 동안 설치 한 버전은 "ipython-5.1.0"입니다. 예상대로 브레이크 포인트에서 정지하는 ipdb 후

pip install "ipython<5" 
    (...) 
    Successfully uninstalled ipython-5.1.0 
    Successfully installed ipython-4.2.1 

:

$ python C:\temp\ipdb_test.py 
WARNING: Readline services not available or not loaded. 
WARNING: Proper color support under MS Windows requires the pyreadline library. 
You can find it at: 
http://ipython.org/pyreadline.html 

Defaulting color scheme to 'NoColor' 
> c:\temp\ipdb_test.py(3)<module>() 
     1 import ipdb 
     2 ipdb.set_trace() 
----> 3 print('test') 

ipdb> 

그것은 수있다

문제의 WA 용액 IPython 버전 4.2.1 대체 될 발생한 이 문제에 대한 IPython 프로젝트 팀에 연락하는 유효한 사례 인 반면, 디버그 세션을 실행하는 초기 작업을 완료했습니다.