join ==== Concatenate a list of pools (or plain strings) end-to-end into a single composite pool. Every combination of one sequence from each input pool is produced (Cartesian product). Pass a spacer string to insert a fixed linker between adjacent segments. .. code-block:: python import poolparty as pp pp.init() ---- Parameters ---------- .. list-table:: :header-rows: 1 :widths: auto * - Parameter - Type - Default - Description * - ``pools`` - ``list[Pool | str]`` - *(required)* - List of :class:`~poolparty.Pool` objects or plain strings. Strings are automatically promoted to single-sequence pools. * - ``spacer_str`` - ``str`` - ``''`` - Fixed string inserted between every adjacent pair of segments. Not itself a pool dimension. * - ``iter_order`` - ``int | None`` - ``None`` - Controls which pool varies fastest when enumerating combinations. The pool with the smallest value is the inner loop. Can also be set on each individual pool. * - ``prefix`` - ``str | None`` - ``None`` - Prefix for auto-generated sequence names. * - ``style`` - ``str | None`` - ``None`` - Display style applied to the joined result. ---- .. note:: Only the most commonly used parameters are shown above. For the full parameter list, see :func:`~poolparty.join` in the :doc:`API Reference `. Examples -------- Join two pools (all pairwise combinations) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Joining two multi-sequence pools produces every combination of one sequence from each input. .. code-block:: python left = pp.from_seqs(["AA", "CC"], mode="sequential") right = pp.from_seqs(["GG", "TT"], mode="sequential") pool = pp.join([left, right]) pool.print_library() .. raw:: html