2017-12-03 5 views
2

안녕 모두,Monkeypatch 파이썬의 구문 분석

나는 연구 sympy를 사용하여 자신 Integer(1)/k (실제로, 이미 Integer(1)/Integer(k)의 단순화) 많은 것 필기구 찾을 수 있어요.

sympy에서 파이썬의 기본 정수 클래스를 "monkeypatch"하는 방법이 있을지 궁금하므로 그냥 1/k을 쓸 수 있습니다. 단지 int(4) 같은 통화를 변경 (플러스 sympy의 Integer 클래스는 int을 사용하기 때문에 최대 재귀 문제가있다, 그러나 이것은 다르다),

나는 __builtins__.int 과부하를 시도하지만, 내가 원하는 변경되지 않습니다.

파이썬이 코드를 분석하는 방법을 변경하는 간단한 방법이 있습니까? (예 : C 코드없이)? 다른 모든 것을 파괴하지 않고 할 어려울 것 같은 사전에

많은 감사 :)

답변

1

이 보인다. 가장 큰 재귀 문제는 이것의 첫 번째 증상입니다.

나는 간단한 방법 제시있다 : 당신이 당신의 파일/라이브러리에서 할 첫 번째 일은로

I = sympy.Integer 

를 실행 한 다음 대신에 훨씬 쉽게되는

I(1)/k 

를 호출 할 수 있습니다 쓰다.