문제
나는 파이썬으로 몇 가지 자기 성찰을 해야 했지만 별로 좋지 않았습니다.
name = sys._getframe(1).f_code
name = "%s:%d %s()" %(os.path.split(name.co_filename)[1],name.co_firstlineno,name.co_name)
다음과 같은 것을 얻으려면
foo.py:22 bar() blah blah
디버깅 출력에서.
나는 이상적으로 이런 종류의 정보로 stderr에게 무엇이든 준비하고 싶습니다. Python 내에서 전 세계적으로 인쇄의 동작을 변경할 수 있습니까?
해결책
인쇄 문은 "sys.stdout.write"를 통해 IO를 수행하므로 인쇄 스트림을 조작하려는 경우 sys.stdout을 재정의할 수 있습니다.
다른 팁
파이썬 검사하다 모듈을 사용하면 이 작업이 훨씬 쉽고 깔끔해집니다.
제휴하지 않습니다 StackOverflow