파이썬 IDLE (또는 콘솔) 환경에서 정의 된 함수를 편집하는 방법은 무엇입니까?파이썬에서 함수 편집하기 IDLE
7
A
답변
8
짧은 대답 : 아니오. 긴 대답 : readline 지원을 활성화 한 경우 위쪽 화살표를 사용하여 줄 단위로 "재정의"할 수 있습니다.
2
파이썬 REPL을 상당히 강화할 수 있습니다. calling your favorite editor도 있습니다. 마우스를 지원하는 터미널 (X에서와 같이)이나 화면을 사용하는 경우 마지막 함수 정의까지 스크롤하고 소스를 복사 한 다음 편집기를 호출하여 붙여 넣기하면됩니다. 취향에 맞게 편집하고 실행하십시오.
2
나는이 일을 스스로 할 수있는 방법을 찾고 있었지만 불가능하다고 슬프지만 지금 사용하고있는 빠른 해결 방법을 공유 할 것입니다.
myFunction()
을 콘솔에 정의하는 대신 myFile.py
파일에 정의합니다. 콘솔에서 그때 가져옵니다
import myFile
from imp import reload
그때, (긴 파일 이름의 경우) 내 함수에 대한 포인터를 만들기 때문에 같은
:
def pMyFunction():
return myFile.myFunction()
내가하고 myFunction을 개정 할 때마다, 나는 그것을 할 myFile.py에서 다음 모듈을 다시로드하십시오.
reload(myFile)
너무 멋져 보이지는 않지만 저에게 도움이됩니다.
1
당신은 현재 소스 코드를 얻을 수있는 검사 모듈을 사용하고 기능을 다시 정의 할 수 있습니다 : 당신은 심지어 그것을 변경하고 함수를 다시 정의 exec
를 사용하여 파이썬 문자열 방법을 사용할 수
from inspect import getsource
def helloworld():
print('Hello, World!')
print(getsource(helloworld))
합니다. 그러나, 나는이 나쁜 스타일을 고려할 것이다.
from functools import getsource
def helloworld():
print('Hello, World!')
old = getsource(helloworld)
new = old.replace('Hello', 'Cheers')
exec(new)
helloworld()
관련 문제
- 1. PHP에서 IMAP IDLE 지원
- 2. mainloop은 IDLE
- 3. 파이썬에서 함수 정의 리디렉션
- 4. 파이썬에서 perror equivalent 함수
- 5. 파이썬에서 전역 함수 만들기
- 6. 파이썬에서 배경 함수
- 7. 파이썬에서 해시 함수 사용하기
- 8. 파이썬에서 이국적인 함수 시그니처는 무엇입니까?
- 9. 파이썬에서 함수 인자로 이름 붙여진리스트
- 10. 파이썬에서 RegEx를 사용하는 함수 파서
- 11. 파이썬에서 중첩 된 생성기 함수
- 12. Windows에서 Python의 IDLE 실행하기
- 13. 루블에서 IMAP IDLE 지원
- 14. IMAP IDLE in Java
- 15. Python IDLE freezes
- 16. Python의 IDLE for
- 17. IDLE for Python 3?
- 18. 레일 뷰에서 HTML 편집하기
- 19. DB에서 행 편집하기
- 20. PHP로 원격 파일 편집하기
- 21. asp : dataagrid에서 셀 편집하기
- 22. 목록보기 제어 항목 편집하기
- 23. "child"테이블에서 ForeignKey 편집하기
- 24. Perl에서 YAML 문서 편집하기
- 25. 이맥스에서 파이썬 편집하기
- 26. 목록의 목록 편집하기 python3
- 27. 자식 서브 모듈 편집하기
- 28. NSPredicateEditor를 사용하여 NSPredicate 편집하기
- 29. C#으로 HTML 편집하기
- 30. 함수 이름을 파이썬에서 그 함수 내부에서 문자열로 출력하는 방법
함수를 몇 번 수정할 때 환경에서 정의 된 것이 실제로는 없으므로 명령 기록을 사용하는 것이 치명적으로 불편합니다. 환경 기능 코드를 인쇄하는 방법이 있습니까? – Leonid
모든 이름은 IDLE에서 사용되는 대화식 인터프리터의 전역 이름 공간 내에서 고유하므로 모든 환경 변수가 정의 된 이름이어야합니다. 당신은 환경 기능 코드를 인쇄하기위한 어웨이의 의미를 명확히 할 수 있습니까? 파이썬 소스 코드를 의미합니까? – jathanism
예, 함수 소스 코드를 인쇄하십시오. – Leonid