Нода «Формат строки» (format string node)¶
Нода „Format String“ вставляет значения в строку, используя либо синтаксис формата строки, совместимый с Python, либо синтаксис спецификатора формата Blender’а.
Эта нода упрощает построение строк, позволяя объединять и форматировать значения без преобразования чисел в строки или необходимости использования нескольких объединённых нод.
См. также
Ссылки на синтаксис Python: - Синтаксис строки формата Python, - Синтаксис строки формата {fmt}
Входы (inputs)¶
- Формат (format)
Строка, использующая либо формат Python, либо спецификатор формата Blender’а. Например,
Count: {}вставляет первое входное значение вместо {}.
Дополнительными входными значениями (Float, Integer или String) можно управлять в списке „элементов формата“ на боковой панели.
Свойства (properties)¶
Элементы формата (format items)¶
Поле «список» для управления динамическим списком входных данных, используемых в строке формата. Каждый элемент соответствует значению, которое можно вставить в формат с помощью заполнителя. Подробнее о том, как должны именоваться входные данные, см. в разделе «Поведение именования вводных данных».
- Тип сокета (socket type)
Тип значения для этого входа:
- Нецелое (float):
Число с плавающей запятой (например,
3.14).- Целое число (integer):
Целое число (например,
42).- Строка (string):
Текстовая строка.
Выходы (outputs)¶
- Строка (string)
Форматированная строка.
Примечания¶
Поддерживает как безымянные (
{}), так и названные ({имя}) заполнители. Однако все безымянные заполнители должны располагаться перед любыми названными.Поддерживаются только входные данные типа float, integer и string.
Преобразования в стиле Python, такие как
!r, не поддерживаются.Доступ к податрибутам (например,
{vector.x}) не поддерживается.Процентное форматирование (например,
%d,%s) не поддерживается.Спецификаторы альтернативной формы, использующие
#(например,{:#x}), не поддерживаются.Форматирование на основе местоположения с использованием
L(как в библиотеке fmt) не поддерживается.Параметры группировки, такие как разделители тысяч (например,
{:,}или{:_}), не поддерживаются.
Поведение именования вводных данных¶
Каждый вход должен иметь уникальное и допустимое имя-идентификатор, используемое в заполнителях (например, {value}). Эта нода использует специальную логику для автоматического назначения имён для новых входов:
При подключении, – используется первый символ имени связываемого сокета.
В противном случае, – имена по умолчанию будут состоять из букв от
aдоz.При необходимости исходное имя сокета преобразуется в допустимый идентификатор.
Если все варианты не подходят, – добавляется уникальный суффикс (например,
_001,_002).
Важно
Входные имена должны быть уникальными допустимыми идентификаторами. Если имя является недопустимым, – операция форматирования может завершиться ошибкой или привести к некорректному результату.
Примеры¶
Базовый¶
Формат:
Количество: {}Входы: Целое число со значением 5
Результат:
Количество: 5
Множественные значения¶
Формат:
X: {}, Y: {}Входы: Float 1.5, Float 2.0
Результат:
X: 1,5, Y: 2,0
Названные входы¶
Формат:
Размер: {ширина} x {высота}Входы: ширина=1920, высота=1080
Результат:
Размер: 1920 x 1080
Дополненные числа¶
Формат:
Кадр_{:04}Вход: Integer 12
Результат:
Кадр_0012
Формат числа (стиль шаблона)¶
Формат:
##.00Вход: Float 3.1415
Результат:
03.14
Путь с номером кадра¶
Формат:
/вывод/изображение_{:04}.pngВход: Integer 42
Результат:
/вывод/изображение_0042.png