I’m new to programming a bit, and am learning python so I can learn flask, using the python crash course book. I was learning about list comprehension but it briefly talks about it. If I do

list[list.append(value) for value in range(1, 20)]

it doesn’t work. Would this be some sort of recursive expression that is not possible?

  • polaris64@lemmy.sdf.org
    link
    fedilink
    arrow-up
    2
    ·
    4 months ago

    A list comprehension is used to convert and/or filter elements of another iterable, in your case a range but this could also be another list. So you can think of it as taking one list, filtering/converting each element and producing a new list as a result.

    So there’s no need to append to any list as that’s implicit in the comprehension.

    For example, to produce a list of all squares in a range you could do:

    [x*x for x in range(10)]
    

    This would automatically “append” each square to the resulting list, there’s no need to do that yourself.