I had trouble with this at our recent workshop in Adelaide. My current
thinking is that we should introduce for loops *after* functions so that we
can do something like:
def do_something_useful_to_image(input_image):
...
for each_image in all_images_in_directory:
processed_image = do_something_useful_to_image(each_image)
save(processed_image)
Obviously I need to work on the output part, so that we can save the effect
of the loop but not use things like modifying lists in-place, which was
also confusing to some. But my general idea is to get the for-loop reading
as close to an Engish sentence as possible. Despite Python's strengths,
this is difficult to do with builtins.
Juan.
On Thu, Dec 3, 2015 at 8:24 PM, Karin Lagesen <[email protected]>
wrote:
> The more I teach, the more I realize that I am not really able to convey
> what a for loop does to everybody. Do any of you have a metaphor or
> something that you use for teaching it? I explain about variables and
> collections, and the body of the loop, and I show examples, but I am still
> not able to get through all the time.
>
> Karin
>
> _______________________________________________
> Discuss mailing list
> [email protected]
>
> http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org
>
_______________________________________________
Discuss mailing list
[email protected]
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org