Консоль Python – Python Console

The Python Console is a quick way to execute commands, with access to the entire Python API, command history and auto-complete. The command prompt is typical for Python 3.x, the interpreter is loaded and is ready to accept commands at the prompt >>>.

The Python Console is a good way to explore the possibilities of Blender built-in Python. The Python Console can be used to test small bits of Python code which can then be pasted into larger scripts.

../_images/editors_python-console_default.png

Python Console.

Interface

Header Menus

View Menu

Zoom In / Zoom Out
Increases/Decreases the font size of the console text.
Move to Previous Word Ctrl-Left
Moves the cursor to the beginning of the previous word. If the cursor is in the middle of a word, the cursor is moved to the beginning of the current word.
Move to Next Word Ctrl-Right
Moves the cursor to the end of the next word. If the cursor is in the middle of a word, the cursor is moved to the end of the current word.
Move to Line Begin Home
Moves the cursor to the start of the current line.
Move to Line End End
Moves the cursor to the end of the current line.

Console Menu

Clear All
Refreshes the console giving the view a fresh start. Note that command history is not cleared.
Clear Line Shift-Return.
Removes everything from the prompt line.
Delete Previous Word Ctrl-Backspace
Deletes everything between the cursor and the beginning of the previous word (separated by periods). If the cursor is in the middle of a word, deletes everything to the beginning of the current word.
Delete Next Word Ctrl-Delete
Deletes everything between the cursor and the end of the next word. If the cursor is in the middle of a word, deletes everything to the end of the current word.
Copy as Script Shift-Ctrl-C
Copies the full history buffer to the clipboard, this can be pasted into a text file to be used as a Python script.
Copy Ctrl-C
Copy the selection.
Paste Ctrl-V
Paste into the command line.
Indent Tab
Inserts a tab character at the cursor.
Unindent Shift-Tab
Unindents the selection.
Backward in History Up
Changes the current command to previous command as they appear in the command history.
Forward in History Down
Changes the current command to next command as they appear in the command history.
Autocomplete Tab
See Auto Completion for more information.

Main View

Клавіатурні Прив’язування – Key Bindings

  • Left / Right – Переміщення текстового курсора.
  • Ctrl-Left / Ctrl-Right – Переміщення текстового курсора по словах.
  • Backspace / Delete – Стирання символів.
  • Ctrl-Backspace / Ctrl-Delete – Стирання слів.
  • Return – Виконання команди.
  • Shift-Return – Додати в історію команд без виконання.

Використання – Usage

Псевдоніми – Aliases

Деякі змінні та модулі доступні для зручності:

  • C: Швидкий доступ до bpy.context.
  • D: Швидкий доступ до bpy.data.
  • bpy: Модуль верхнього рівня Blender Python API.

Перший Погляд на Середовище Консолі – First Look at the Console Environment

Для перевірки, що завантажено у середовище інтерпретатора, уведіть dir() у запит та виконайте його.

../_images/editors_python-console_dir.png

Авто Завершення – Auto Completion

Now, type bpy. and then press Tab and you will see the Console auto-complete feature in action.

../_images/editors_python-console_completion.png

Ви помітите, що з’явився список під-модулів всередині bpy. Ці модулі містять все, що ми можемо зробити за допомогою Blender Python API, та є дуже потужними засобами.

Дозволяє вивести у списку всіх елементів модуля bpy.app.

Зверніть увагу на зелений вивід над запитом, де ви викликали авто-завершення. Те, що ви бачите, – це результат списку авто-завершення. У списку вище – все це імена атрибутів модуля, але якщо ви бачите у кінці якогось імені (, то це є функція.

Ми будемо використовувати це багато для чого, щоб допомогти собі вивчити цей API швидше. Тепер, як ви вивели це, воно допоможе перейти до дослідження деяких модулів у bpy.

Перед Возінням з Модулями – Before Tinkering with the Modules

Якщо ви подивитеся на 3D Огляд у стандартній сцені Blender’а, то ви помітите три об’єкти: Куб – Cube, Освітлювач – Light та Камеру – Camera.

  • Усі ці об’єкти існують у контексті та можуть бути різні режими, в яких ними оперується.
  • У будь-якому випадку, тільки один об’єкт є активним та може бути виділено більше, ніж один об’єкт.
  • Усі об’єкти – це дані у blend-файлі.
  • Існують оператори/функції, що створюють та модифікують ці об’єкти.

Для всіх сценаріїв, перелічених вище (не все ще було перераховано, пам’ятайте…) модуль bpy надає функціональність для доступу і модифікації даних.

Приклади – Examples

bpy.context

Примітка

Для команд нижче, щоб отримати правильний вивід, переконайтеся, що ви вибрали об’єкт(и) у 3D Огляді.

../_images/editors_python-console_bpy-context.png
bpy.context.mode
Буде виводити поточний режим 3D Огляду (Об’єкта – Object, Редагування – Edit, Ліплення –Sculpt тощо).
bpy.context.object or bpy.context.active_object
Will give you access to the active object in the 3D View.

Change the X location to a value of 1:

bpy.context.object.location.x = 1

Move the object from previous X location by 0.5 unit:

bpy.context.object.location.x += 0.5

Change the X, Y, Z location:

bpy.context.object.location = (1, 2, 3)

Зміна лише компонентів X, Y:

bpy.context.object.location.xy = (1, 2)

The data type of object’s location:

type(bpy.context.object.location)

Тепер, є багато даних, до яких ви маєте доступ:

dir(bpy.context.object.location)
bpy.context.selected_objects
Буде давати доступ до списку усіх вибраних об’єктів.

Type this and then press 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 має функції та атрибути, що дають вам доступ до усіх даних у blend-файлі.

Ви можете мати доступ до таких даних у поточному blend-файлі: об’єкти, сіті, матеріали, текстури, сцени, екрани, звуки, скрипти тощо.

Це багато даних.

../_images/editors_python-console_bpy-data.png

bpy.ops

Система засобів побудована на концепції операторів – operator. Оператори типово виконуються за допомогою кнопок або меню, але можуть бути викликані також безпосередньо з Python.

See the bpy.ops API documentation for a list of all operators.