FAQ: Loops - For Each Loops

This community-built FAQ covers the “For Each Loops” exercise from the lesson “Loops”.

Paths and Courses
This exercise can be found in the following Codecademy content:

Learn How to Code

FAQs on the exercise For Each Loops

There are currently no frequently asked questions associated with this exercise – that’s where you come in! You can contribute to this section by offering your own questions, answers, or clarifications on this exercise. Ask or answer a question by clicking reply (reply) below.

If you’ve had an “aha” moment about the concepts, formatting, syntax, or anything else with this exercise, consider sharing those insights! Teaching others and answering their questions is one of the best ways to learn and stay sharp.

Join the Discussion. Help a fellow learner on their journey.

Ask or answer a question about this exercise by clicking reply (reply) below!

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources? Head here.

Looking for motivation to keep learning? Join our wider discussions.

Learn more about how to use this guide.

Found a bug? Report it!

Have a question about your account or billing? Reach out to our customer support team!

None of the above? Find out where to ask other questions here!

Hi! I didn’t quite understand how the foreach loop repeated the instruction the number of times that was needed to complete the tile pattern in the exercise? I expected it to only repeat the instruction according to the number of items in the list.

7 Likes

" We only need to write placeTile() once because the pink-green-red repetition is already described in the list."

So… the repetition is defined by the input “festiveList = [‘pink’, ‘green’, ‘red’, ‘pink’, ‘green’, ‘red’ ]”?
So, if I were to just input “festiveList = [‘pink’, ‘green’, ‘red’]” once, it wouldn’t loop? I just don’t get why you need to type ‘pink’, ‘green’, ‘red’ twice.

9 Likes

I would like to second this question, can you please explain how the lists were written?
Also where is the code to run each of the different list?
There is only placeTile(color) but how do we know to make it festiveList or moodyList?

2 Likes

https://www.codecademy.com/courses/learn-how-to-code/lessons/bop-loops/exercises/for-each-loops?action=resume_content_item

The exercise calls for ‘placeTile(color)’

Does this mean that ‘color’ has already been defined outside of this exercise (ie the backend)? If I were building this from scratch, would I have to define ‘color’ first, before it can be used?

3 Likes

Is this exercise an infinite loop ?
How does the computer knows when to stop ?

2 Likes

Why is the “for each loop” a loop?

To me it is like asking the computer “do all this ONCE”. I do not see any loop in doing something only once.

i would also like to understand that part, it kinda bugs me to get half of the information. to fully understand this, i would need to at least get access to the code behind (i’m guessing it’s backend because i don’t know exactly what it is yet) to see how it works. if someone could explain this to us, it would be really appreciated.

Thank you!

1 Like

i got a friend to explain me that the (color) has been defined in the “for each” before wich we don’t see because it’s not the point of this exercise and it could be confusing to give us that kind of information at this point.
feel free to answer my original question if you want to, so that it can help others, but i understand it now. Thank you!

1 Like

I Understand that this for each loop exercise might be a little tough.

I will try to explain it here.

Note that code editor. The different types of lists are already describes there with the exact sequence of color an the exact number of repetitions needed.

Hence, the syntax placeTile(color); works for all the spaces exactly.

A few of you have a question with regards to the code in the Learn part of the lesson.

festiveList = [‘pink’, ‘green’, ‘red’, ‘pink’, ‘green’, ‘red’ ]

Why was the loop repeated twice?

The only reason the loop was repeated twice was to show us an example. If this code is used in the editor, then only six tiles would be filled.

1 Like

Think of it like this:

festiveList is a list that has already been defined by the programmer. Within that list, the programmer has already specified the sequenced items (coloured titles) and just like any other list, each item is indexed (the first item starts at 0 and then moves to 1, and so on…)

The programmer then writes a ‘For Each Loop’. This loop works by working through a range and in this case that range is the list festiveList.
As seen below:

For each color in festiveList:
placeTile(color)

color is a variable and as we know, variables store data. In this instance, the index position from ‘festiveList’ is being stored. So at the very beginning of the ‘For Each Loop’ the index position is 0. This means that when the programme runs 'placeTile(color) it is asking the computer to place whatever is in indexed position 0 (pink). The ‘For Each Loop’ would then iterate again but this time the contents of variable color would be 1 (green) and this will continue until the ‘For Each Loop’ reaches the very end of the ‘fetiveList’.

Finally, placeTile() is a function. In this particular scenario, we can’t see how the placeTile() function is built but it clearly needs a parameter within the parentheses (the brackets) in order for the function to work. Again, whilst we can’t see how the function has been programmed, we can see what happens everytime that function is called ‘placeTitle (color)’ - it places the corresponding color (according to the index position) into the next available tile.

I hope this makes sense.

1 Like