Python Console
Python 콘솔은 전체 Python API, 명령 기록 및 자동 완성에 대한 액세스를 통해 명령을 실행하는 빠른 방법입니다. 명령 프롬프트는 Python 3.x에서 일반적이며, 인터프리터가 로드되고 >>> 프롬프트에서 명령을 받아들일 준비가 되어 있습니다.
Python 콘솔은 Blender에 내장된 Python의 가능성을 탐색할 수 있는 좋은 방법입니다. Python 콘솔을 사용하면 더 큰 스크립트에 붙여넣을 수 있는 Python 코드의 작은 부분을 테스트할 수 있습니다.

Interface
Header Menus
View Menu
Zoom In / Zoom Out
콘솔 텍스트의 글꼴 크기를 늘리거나 줄입니다.
Move to Previous Word Ctrl-Left
커서를 이전 단어의 시작 부분으로 이동합니다. 커서가 단어 중간에 있으면 커서는 현재 단어의 시작 부분으로 이동됩니다.
Move to Next Word Ctrl-Right
커서를 다음 단어의 끝으로 이동합니다. 커서가 단어 중간에 있으면 커서는 현재 단어의 끝으로 이동됩니다.
Move to Line Begin Home
커서를 현재 줄의 시작 부분으로 이동합니다.
Shift-Home: 커서와 현재 줄의 시작 부분 사이의 모든 텍스트를 선택합니다.
Move to Line End End
커서를 현재 줄의 끝으로 이동합니다.
Shift-End: 커서와 현재 줄 끝 사이의 모든 텍스트를 선택합니다.
Console Menu
Clear All
보기를 새로 시작하도록 콘솔을 새로 고칩니다. 명령 기록은 지워지지 않습니다.
Clear Line Shift-Return.
프롬프트 줄에서 모든 것을 제거합니다.
Delete Previous Word Ctrl-Backspace
커서와 이전 단어의 시작 부분(마침표로 구분) 사이의 모든 내용을 삭제합니다. 커서가 단어 중간에 있으면 현재 단어의 시작 부분까지 모두 삭제됩니다.
Delete Next Word Ctrl-Delete
커서와 다음 단어 끝 사이의 모든 내용을 삭제합니다. 커서가 단어 중간에 있으면 현재 단어 끝까지 모두 삭제됩니다.
Copy as Script Shift-Ctrl-C
전체 기록 버퍼를 클립보드에 복사합니다. 이를 텍스트 파일에 붙여넣어 Python 스크립트로 사용할 수 있습니다.
Cut Ctrl-X
선택한 텍스트를 삭제하고 클립보드에 복사합니다.
Copy Ctrl-C
선택 항목을 복사합니다.
Paste Ctrl-V
명령줄에 붙여넣습니다.
Indent Tab
커서 위치에 탭 문자를 삽입합니다.
Unindent Shift-Tab
선택 항목 들여쓰기를 취소합니다.
Backward in History Up
명령 기록에 나타나는 대로 현재 명령을 이전 명령으로 변경합니다.
Forward in History Down
명령 기록에 나타나는 대로 현재 명령을 다음 명령으로 변경합니다.
Autocomplete Tab
자세한 내용은 자동 완성을 참조하세요.
Main View
Key Bindings
LMB– 입력 라인을 따라 커서를 이동합니다.Left/Right– 커서 움직임.Ctrl-Left/Ctrl-Right– 단어별로 커서 동작.Shift-Left/Shift-Right– 왼쪽/오른쪽 문자를 선택합니다.Ctrl-Shift-Left/Ctrl-Shift-Right– 왼쪽/오른쪽에 있는 단어를 선택합니다.Ctrl-A– 모든 텍스트와 텍스트 기록을 선택합니다.Backspace/Delete– 문자를 지웁니다.Ctrl-Backspace/Ctrl-Delete– 단어를 지웁니다.Return– 명령을 실행합니다.Shift-Return– 실행하지 않고 명령 기록에 추가합니다.
Usage
Aliases
편의를 위해 일부 변수와 모듈을 사용할 수 있습니다.
C: bpy.context에 빠르게 액세스합니다.
D: bpy.data에 대한 빠른 액세스.
bpy: 최상위 블렌더 Python API 모듈입니다.
First Look at the Console Environment
인터프리터 환경에 로드된 내용을 확인하려면 프롬프트에서 dir()을 입력하고 실행합니다.

Auto Completion
이제 bpy.를 입력하세요. 그런 다음 Tab 키를 누르면 콘솔 자동 완성 기능이 작동하는 것을 볼 수 있습니다.

bpy 내부의 하위 모듈 목록이 나타나는 것을 볼 수 있습니다. 이 모듈은 Blender Python API로 수행할 수 있는 모든 작업을 캡슐화하며 매우 강력한 도구입니다.
bpy.app 모듈의 모든 내용을 나열해 보겠습니다.
자동 완성을 활성화한 프롬프트 위에 녹색 출력이 표시됩니다. 당신이 보는 것은 자동 완성 목록의 결과입니다. 위 목록에서는 모두 모듈 속성 이름이지만 (로 끝나는 이름이 있으면 함수입니다.
API를 더 빠르게 학습하는 데 도움이 되도록 이를 많이 활용하겠습니다. 이제 이것에 익숙해졌으므로 bpy의 일부 모듈을 조사해 보겠습니다.
Before Tinkering with the Modules
기본 블렌더 장면에서 3D 뷰포트를 보면 큐브, 조명, 카메라라는 세 가지 개체를 볼 수 있습니다.
- 모든 개체는 하나의 컨텍스트에 존재하며 해당 개체가 작동되는 다양한 모드가 있을 수 있습니다.
- 어떤 경우에도 하나의 개체만 활성화되며 두 개 이상의 개체를 선택할 수 있습니다.
- 모든 객체는 블렌드 파일의 데이터입니다.
- 이러한 객체를 생성하고 수정하는 연산자/함수가 있습니다.
위에 나열된 모든 시나리오(모두 나열되지는 않았지만 주의하세요…)에 대해 bpy 모듈은 데이터에 액세스하고 수정하는 기능을 제공합니다.
Examples
bpy.context
아래 명령이 올바른 출력을 표시하려면 3D 뷰포트에서 개체를 선택했는지 확인하십시오.

bpy.context.mode
현재 3D 뷰포트 모드(개체, 편집, 조각 등)를 인쇄합니다.
bpy.context.object 또는 bpy.context.active_object
3D 뷰포트의 활성 개체에 대한 액세스를 제공합니다.
X 위치를 값 1로 변경합니다.
bpy.context.object.location.x = 1
이전 X 위치에서 객체를 0.5 단위 이동합니다.
bpy.context.object.location.x += 0.5
X, Y, Z 위치를 변경합니다.
bpy.context.object.location = (1, 2, 3)
X, Y 구성요소만 변경합니다.
bpy.context.object.location.xy = (1, 2)
객체 위치의 데이터 유형:
Type(bpy.context.object.location)
이제 액세스할 수 있는 데이터가 너무 많습니다.
dir(bpy.context.object.location)
bpy.context.selected_objects
선택한 모든 개체 목록에 대한 액세스 권한을 부여합니다.
이것을 입력한 다음 Tab을 누릅니다.
bpy.context.selected_objects
목록의 첫 번째 개체 이름을 인쇄하려면:
bpy.context.selected_objects[0]
복잡한 것… 하지만 이것은 활성 개체를 포함하지 않는 개체 목록을 인쇄합니다.
[obj for obj in bpy.context.selected_objects if obj != bpy.context.object]
bpy.data
bpy.data에는 블렌드 파일의 모든 데이터에 대한 액세스를 제공하는 기능과 속성이 있습니다.
현재 블렌드 파일에서 객체, 메시, 재질, 텍스처, 장면, 화면, 사운드, 스크립트 등의 데이터에 액세스할 수 있습니다.
그것은 많은 데이터입니다.

bpy.ops
도구 시스템은 연산자 개념을 중심으로 구축되었습니다. 연산자는 일반적으로 버튼이나 메뉴에서 실행되지만 Python에서도 직접 호출할 수 있습니다.
모든 연산자 목록은 bpy.ops API 문서를 참조하세요.