Nodes/comfyui_bmad_nodes/ExtendFloatList
ComfyUI Node Runs on cloud

ExtendFloatList

The Boring Node That Glues Your Float Lists Together

By bmad4ever·Created 3 years ago·Updated 9 months ago· 70
ExtendFloatList
    • FLOAT
    inputs_len2

    ExtendFloatList does exactly one thing: it takes several float lists and concatenates them into one. No math, no sorting, no deduping - it literally calls list.extend() on each input in order. It's the most boring node in bmad4ever's grab-bag pack, and once you build batch workflows you'll wonder how you lived without it.

    Why you'd reach for it

    ComfyUI's list story is the reason workflows end up looking like spaghetti. Some nodes output a single value, some output a list (the sockets show [ ]), and when you want to feed a dozen values into a batch loop you usually can't just type them. ExtendFloatList is the merge point: take the denoise values from one place, the CFG values from another, and combine them into one list that feeds a single batch driver.

    The classic use is building a sweep. Say you want to try denoise 0.4 through 0.8 in 0.1 steps. Generate [0.4, 0.5, 0.6] with one list-making node and [0.7, 0.8] with another, run both into ExtendFloatList, and out comes [0.4, 0.5, 0.6, 0.7, 0.8] in order.

    How it works

    The only widget is inputs_len, which defaults to 2 and can go up to 32. That's the count of float-list inputs the node exposes. Here's the trap for newcomers: the inputs don't appear until you right-click the node and pick "update Inputs". That right-click behavior is why the README marks these nodes with a ❔ - it's not an error, it's the design. Change inputs_len from 2 to 4, right-click, update, and you get four float_n inputs.

    Each input expects a list of floats. If you try to wire in a single float, ComfyUI will complain about types - wrap single values with the pack's ToFloatList node first. The output is a single FLOAT list socket.

    Install

    Install the whole pack once and every Bmad node comes with it:

    cd ComfyUI/custom_nodes
    git clone https://github.com/bmad4ever/comfyui_bmad_nodes
    

    then restart ComfyUI. Easier: use ComfyUI Manager and search for "comfyui_bmad_nodes". The pack's requirements.txt pulls in opencv-python, scikit-image, gray2color, and simpleeval - overkill for this particular node (it's pure Python list logic), but Manager installs them automatically and you want them anyway for the pack's CV nodes.

    Common issues

    • Inputs not showing after you set inputs_len. Right-click → "update Inputs". This is the #1 stumble and it's a UI step, not a bug.
    • Type mismatch. You fed a plain FLOAT into a list socket. Run it through ToFloatList first, or use a node that outputs a float list.
    • Wrong order. Concatenation is left-to-right, top-to-bottom, so the top input ends up first in the output list. If your sweep comes out scrambled, check which slot is which.

    For a list this simple there's not much more to say - which is the point. Set the count, hit update, wire it up, move on.

    CategoryBmad/Lists/Extend

    Inputs (1)

    NameTypeDefaultDescription
    inputs_lenINT20–32

    Outputs (1)

    NameTypeDescription
    FLOATFLOAT