# Iterators.product

**URL:** <https://discourse.julialang.org/t/iterators-product/60078>\
**Category:** New to Julia\
**Tags:** question\
**Created:** [April 27, 2021, 2:58am UTC](https://discourse.julialang.org/t/iterators-product/60078 "2021-04-27T02:58:54Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![marllos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marllos/32/205917_2.png) [@marllos](https://discourse.julialang.org/u/marllos)\
**Post date:** [April 27, 2021, 2:58am UTC](https://discourse.julialang.org/t/iterators-product/60078/1 "2021-04-27T02:58:54Z")

</div>

Hello everyone. Can anyone help me see why result 1 and 2 are different. Thank you.

```julia
function test()
	u = [1,0]
	d = [0,1]
	N = 2
	base = ntuple(i->[u,d],N)
	# result 1
	for q in Iterators.product(base)
		println(q)
	end
	println("--------------")
	# result 2 <-- correct
	for q in Iterators.product([u,d],[u,d])
		println(q)
	end
end

```

---

<div class="post-metadata">

**Author:** ![jules](https://avatars.discourse-cdn.com/v4/letter/j/41988e/32.png) [@jules](https://discourse.julialang.org/u/jules)\
**Post date:** [April 27, 2021, 4:05am UTC](https://discourse.julialang.org/t/iterators-product/60078/2 "2021-04-27T04:05:40Z")

</div>

It’s a different thing to pass one argument which is a 2-tuple of arrays, or to pass two arguments which are both arrays. You can splat the first tuple into multiple arguments, then it does the same thing as the other version

```julia
for q in Iterators.product(base...)

```

---

<div class="post-metadata">

**Author:** ![marllos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marllos/32/205917_2.png) [@marllos](https://discourse.julialang.org/u/marllos)\
**Post date:** [April 27, 2021, 12:47pm UTC](https://discourse.julialang.org/t/iterators-product/60078/3 "2021-04-27T12:47:55Z")

</div>

I was already rephrasing the question, when I decided to test your suggestion. I thought the “…” was just a ellipsis sign. What is the meaning of “…” after the arguments?

---

<div class="post-metadata">

**Author:** ![amrods](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amrods/32/2543_2.png) [@amrods](https://discourse.julialang.org/u/amrods)\
**Post date:** [April 27, 2021, 1:06pm UTC](https://discourse.julialang.org/t/iterators-product/60078/4 "2021-04-27T13:06:25Z")

</div>

it’s the [splatting](https://docs.julialang.org/en/v1/manual/faq/#The-two-uses-of-the-...-operator:-slurping-and-splatting) operation.

---

<div class="post-metadata">

**Author:** ![marllos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marllos/32/205917_2.png) [@marllos](https://discourse.julialang.org/u/marllos)\
**Post date:** [April 27, 2021, 1:21pm UTC](https://discourse.julialang.org/t/iterators-product/60078/5 "2021-04-27T13:21:27Z")

</div>

Thank you.

---

<div class="post-metadata">

**Author:** ![marllos](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marllos/32/205917_2.png) [@marllos](https://discourse.julialang.org/u/marllos)\
**Post date:** [April 27, 2021, 1:24pm UTC](https://discourse.julialang.org/t/iterators-product/60078/6 "2021-04-27T13:24:57Z")

</div>

Thanks.
