Number from List
Pull one number out of a list, per grid cell
- list item
- size
- wraps
Number from List is String from List's numeric twin - same index-picking mechanism, just for the FLOAT values you get out of Numbers to List instead of text. It's how a single CFG or steps sweep gets distributed across an entire XY grid without retyping the value into every cell by hand.
How it works
Feed list_input your source list of numbers (typically the list output of Numbers to List) and index the position you want. Like its string sibling, index can be a single number for a one-off pick or a list - wire in ezXY Driver's x indices or y indices and this node runs once per index, handing back list item as a list of picked values, one per grid cell, off a single wire. That's the mechanism the whole ezXY grid pattern is built on: ComfyUI already executes a node once per item when it receives a list input, and these picker nodes just make that behavior deliberate.
Inputs and outputs
list_input(FLOAT) - your source list, from Numbers to List or anywhere else producing a float list.index(INT, default 0) - which item to pick, scalar or list.list item- the picked value(s), as a list matching whatever you fedindex.size- length oflist_input, a single number.wraps- how many times each pick wrapped around the list's length, matchinglist item's shape. Nonzero means your index range is longer than your value list - you're repeating values, not erroring.
Installing ComfyUI_ezXY
ComfyUI Manager: search "ComfyUI_ezXY", install, restart. Manual clone:
cd ComfyUI/custom_nodes
git clone https://github.com/GMapeSplat/ComfyUI_ezXY.git
No models, no heavy dependencies.
Common issues & troubleshooting
The everyday gotcha is the same as its string sibling: if your grid's index range (from ezXY Driver or Iteration Driver) is bigger than your Numbers to List entry, you'll wrap around instead of failing loudly. Check wraps - wire it into Line to Console once while you're setting up a new sweep, then remove it once you've confirmed the sizes line up.
This node also depends on the pack's runtime type-casting patch to connect a FLOAT output into places expecting an INT (a KSampler's steps, say) - that patch (autoCastPatch.py, toggleable in config.yaml) is the single most fragile part of ComfyUI_ezXY, and a real crash from that file has been reported when it couldn't cast a value cleanly. If Number from List's output refuses to connect where you expect, or throws instead, that's the patch, not the picker logic.
And the pack-wide warning still applies: the README says directly it "does not work with current version of Comfyui," and a 2025 GitHub issue shows someone stuck enough to ask about forking a node out because the repo had broken and gone unmaintained for a while. Worth checking issues there before assuming your own graph is at fault.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| list_input | FLOAT | — | |
| index | INT | 0-999–999 | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| list item | FLOAT | — |
| size | INT | — |
| wraps | INT | — |