8000 `flatten` treats iterable-once objects not carefully enough · Issue #583 · evhub/coconut · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
flatten treats iterable-once objects not carefully enough #583
Closed
@aananko

Description

@aananko
>>> (range(2) for _ in range(2)) |> flatten |> list
[]

but

>>> (range(2) for _ in range(2)) |> flatten |> iter |> list
[0, 1, 0, 1]

Looks like list() constructor does notice __len__ and calls it first, and flatten.__len__ consumes the generator.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0