Nodes/ComfyUI Easy Use/easy rangeInt
ComfyUI Node Runs on cloud

easy rangeInt

Generate a list of numbers, like Python's range()

By yolain·Created 3 years ago·Updated 8 days ago· 2,633
easy rangeInt
    • range
    • range_sizes
    range_modestep
    start0
    stop1
    step1
    num_steps0
    end_modeInclusive

    If you've written any code you already know this node: it's range() as a graph element. Give it a start, a stop, and a step, and it produces a list of integers - 0, 2, 4, 6, 8 and so on. In a ComfyUI workflow that list is what you use to drive iteration and sweeps: run something once per number, index into a set of options, or feed a plot axis. It turns "do this N times with a changing value" into a wire.

    The everyday use is loops and batches. Want to try seeds 1000 through 1010? Generate the range, iterate it. Want to step a parameter across a set of values? A range is the cleanest source. It's the numeric backbone behind a lot of the automation the Logic nodes make possible.

    How it works

    It computes an arithmetic sequence from your bounds and emits it as an integer list - meaning downstream nodes that accept a list will process each value in turn. You control the sequence two ways depending on range_mode: by fixed step size, or by a target number of steps that gets divided across the start–stop span. The end_mode decides whether the stop value itself is included.

    The inputs and outputs that matter

    • start - the first value.
    • stop - where the range ends (whether this value is included depends on end_mode).
    • step - the increment between values (used in step mode). A negative step counts downward.
    • range_mode - choose between stepping by a fixed step or by a set num_steps count.
    • num_steps - in that mode, how many values to produce across the span.
    • end_mode - Inclusive includes the stop value, Exclusive stops just before it (the Python default). This is the classic off-by-one lever.

    Outputs: range (the INT list) and range_sizes (an INT list describing the sizes) - for most uses you want range, wired into a loop or an index input.

    How to install it

    Ships in ComfyUI-Easy-Use. ComfyUI Manager: search ComfyUI-Easy-Use, install, restart. Or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/yolain/ComfyUI-Easy-Use
    

    then install.bat (Windows) or pip install -r ComfyUI-Easy-Use/requirements.txt, and restart. No models.

    Common issues & troubleshooting

    Off-by-one at the end. Whether stop is included is entirely down to end_mode. If your range is one short (or one long), flip between Inclusive and Exclusive - this is the number-one confusion with range generators and it's a one-toggle fix.

    Empty range. If start, stop, and step don't make sense together - a positive step with stop below start, for instance - you get nothing out, and downstream loops just don't run. Check that the step points from start toward stop (use a negative step to count down).

    List vs. single value. The output is a list, so a downstream node needs to actually iterate it (a for-loop, or a node that accepts list input) for the range to mean anything. Plug it into something expecting a single INT and it'll either take just the first value or error, depending on the node.

    Huge ranges. Each value can trigger a full pass in a loop, so a range of hundreds is hundreds of generations. Keep it small while testing.

    CategoryEasyUse/Logic/Type

    Inputs (6)

    NameTypeDefaultDescription
    range_modeCOMBOstep2 options: step, num_steps
    startINT0-4096–4096
    stopINT1-4096–4096
    stepINT1-4096–4096
    num_stepsINT0-4096–4096
    end_modeCOMBOInclusive2 options: Inclusive, Exclusive

    Outputs (2)

    NameTypeDescription
    rangeINT
    range_sizesINT