IDLE — 파이썬 에디터와 셸

IDLE — 파이썬 에디터와 셸

IDLE은 파이썬의 통합 개발 및 학습 환경(Integrated Development and Learning Environment)이에요. IDLE 앱은 idlelib 패키지로 구현돼요.

IDLE의 주요 기능:

  • 크로스 플랫폼: Windows, Unix, macOS에서 대부분 동일하게 동작.
  • 코드 입력·출력·오류 메시지에 색상을 입히는 파이썬 셸 창(대화형 인터프리터).
  • 다중 undo, 파이썬 색상 처리, 스마트 들여쓰기, 호출 힌트(call tips), 자동 완성 등의 기능을 가진 다중 창 텍스트 에디터.
  • 모든 창에서 검색, 에디터 창에서 바꾸기, 여러 파일 검색(grep).
  • 영구 중단점, 스테핑, 전역·지역 네임스페이스 보기를 지원하는 디버거.
  • 구성, 브라우저, 기타 대화 상자.

출처: Python documentation

본문

메뉴

IDLE에는 Shell 창과 Editor 창이라는 두 가지 주요 창 유형이 있어요. 동시에 여러 에디터 창을 가질 수 있어요. Windows와 Linux에서 각각 자체 상단 메뉴를 가져요. macOS에는 하나의 애플리케이션 메뉴가 있으며 현재 선택된 창에 따라 동적으로 변경돼요.

파일 메뉴(Shell과 Editor) — New File(새 파일 편집 창), Open…(기존 파일 열기), Open Module…(sys.path를 검색해 기존 모듈 열기), Recent Files(최근 파일 목록), Module Browser(함수·클래스·메서드를 트리 구조로 표시), Path Browser(sys.path 디렉터리·모듈 표시), Save, Save As…, Save Copy As…, Print Window, Close Window, Exit IDLE.

편집 메뉴(Shell과 Editor) — Undo, Redo, Select All, Cut, Copy, Paste, Find…, Find Again, Find Selection, Find in Files…, Replace…, Go to Line, Show Completions, Expand Word, Show Call Tip, Show Surrounding Parens.

서식 메뉴(Editor 창만) — Format Paragraph, Indent Region, Dedent Region, Comment Out Region, Uncomment Region, Tabify Region, Untabify Region, Toggle Tabs, New Indent Width, Strip Trailing Whitespace.

실행 메뉴(Editor 창만) — Run Module, Run… Customized, Check Module, Python Shell.

Shell 메뉴(Shell 창만) — View Last Restart, Restart Shell, Previous History, Next History, Interrupt Execution.

디버그 메뉴(Shell 창만) — Go to File/Line, Debugger(토글), Stack Viewer, Auto-open Stack Viewer.

옵션 메뉴(Shell과 Editor) — Configure IDLE, Show/Hide Code Context(Editor만), Show/Hide Line Numbers(Editor만), Zoom/Restore Height.

창 메뉴(Shell과 Editor) — 열린 모든 창의 이름을 나열.

도움말 메뉴(Shell과 Editor) — About IDLE, IDLE Help, Python Docs, Turtle Demo.

컨텍스트 메뉴 — 창에서 오른쪽 클릭(Control-click on macOS)해 열 수 있으며 표준 클립보드 함수와 편집기 창의 중단점 함수가 있어요.

편집과 내비게이션

에디터 창 — 제목 표시줄에 파일 이름, 전체 경로, 창을 실행하는 파이썬과 IDLE 버전이 포함돼요. 상태 표시줄에 줄 번호(Ln)와 열 번호(Col)가 있어요.

키 바인딩C는 Windows와 Unix의 Control 키, macOS의 Command 키를 가리켜요. 화살표 키는 커서를 한 문자나 한 줄 이동하고, C-LeftArrow/C-RightArrow는 한 단어씩 이동하며, Home과 End는 줄의 시작·끝으로 이동해요.

자동 들여쓰기 — 블록 열기 문 다음 줄은 4칸(파이썬 셸 창에서는 탭 하나) 들여써져요. break, return 같은 특정 키워드 다음 줄은 dedent돼요.

검색과 바꾸기 — 어떤 선택이든 검색 대상이 돼요. [x] Regular expression이 선택되면 파이썬 re 모듈에 따라 해석돼요.

완성(Completions) — 모듈 이름, 클래스·함수 속성, 파일 이름에 대해 요청 시 제공돼요. Show Completions를 사용하거나 접두사 뒤 Tab을 눌러 완성 상자를 열 수 있어요.

호출 힌트(Calltips) — 접근 가능한 함수 이름 뒤에 (를 입력하면 자동으로 표시돼요. 함수의 시그니처와 docstring으로 구성돼요.

포맷 블록 — Reformat Paragraph는 연속된 동일 들여쓰기의 비어 있지 않은 주석 블록이나 여러 줄 문자열 내의 유사한 텍스트 블록을 다시 감싸요.

코드 컨텍스트(Code Context)class, def, if 키워드로 시작하는 블록 코드의 열리는 줄을 창 상단의 창에 고정해 보여줘요.

셸 창 — 완전한 문을 입력·편집·재호출할 수 있어요. Return을 누르면 단일 줄 문을 실행하고, 문 뒤에 빈 줄을 입력하면 다중 줄 복합 문을 제출해요. RESTART가 포함된 줄은 사용자 실행 프로세스가 다시 시작되었음을 의미해요.

시작과 코드 실행

-s 옵션으로 시작하면 IDLE은 환경 변수 IDLESTARTUP이나 PYTHONSTARTUP이 참조하는 파일을 실행해요.

명령줄 사용 — IDLE은 다양한 옵션으로 명령줄에서 호출할 수 있어요: python -m idlelib [options] [file ...]. 옵션에는 -c <command>(셸 창에서 지정된 파이썬 명령 실행), -d(디버거 활성화 및 셸 창 열기), -e(에디터 창 열기), -h(도움말 출력), -i(셸 창 열기), -r <file>(셸 창에서 파일 실행), -s(시작 파일 실행), -t <title>, -(표준 입력 읽고 실행)이 있어요.

시작 실패 — IDLE은 IDLE GUI 프로세스와 사용자 코드 실행 프로세스 사이의 통신에 소켓을 사용해요. 연결 실패의 일반적인 원인은 표준 라이브러리 모듈과 같은 이름의 사용자 작성 파일(예: random.py, tkinter.py)이에요. 현재 해결책은 사용자 파일 이름을 바꾸는 것이에요.

사용자 코드 실행 — 기본적으로 IDLE은 셸·에디터를 실행하는 사용자 인터페이스 프로세스가 아닌 별도 OS 프로세스에서 사용자 코드를 실행해요. 실행 프로세스에서 sys.stdin, sys.stdout, sys.stderr를 Shell 창에서 입력을 받고 출력을 보내는 객체로 대체해요.

도움말과 환경 설정

도움말 소스 — “IDLE Help”는 Library Reference의 IDLE 장의 서식화된 html 버전을 표시하고, “Python Docs”는 docs.python.org/x.y의 방대한 도움말 소스를 엽니다.

환경 설정 — 글꼴, 하이라이트, 키, 일반 환경 설정은 옵션 메뉴의 Configure IDLE에서 변경할 수 있어요. 기본이 아닌 사용자 설정은 홈 디렉터리의 .idlerc 디렉터리에 저장돼요.

idlelib — IDLE 애플리케이션의 구현

Lib/idlelib 패키지는 IDLE 애플리케이션을 구현해요. idlelib의 파일은 idlelib/README.txt에 설명돼요. 속성 변경은 역이식될 수 있다는 의미에서 idlelib 코드는 ‘비공개’예요.

더 알아보기 (Learn more)