[Python-Dev] The new and improved PEP 572, same great taste with 75% less complexity! (original) (raw)
Victor Stinner vstinner at redhat.com
Wed Apr 25 19:05:42 EDT 2018
- Previous message (by thread): [Python-Dev] The new and improved PEP 572, same great taste with 75% less complexity!
- Next message (by thread): [Python-Dev] The new and improved PEP 572, same great taste with 75% less complexity!
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
# Handle a matched regex if (match := pattern.search(data)) is not None: ...
# A more explicit alternative to the 2-arg form of iter() invocation while (value := readnextitem()) is not None: ... # Share a subexpression between a comprehension filter clause and its output filtereddata = [y for x in data if (y := f(x)) is not None]
What do you think of adding the variant without the new ":=" syntax? It would help to see the benefit of the new ":=" syntax, and help to compare the two syntaxes.
if: if (match := pattern.search(data)) is not None: ... vs match = pattern.search(data) if match is not None: ...
while: while (value := read_next_item()) is not None: ... vs while True: value = read_next_item() if value is None: break ...
list-comprehension: filtered_data = [y for x in data if (y := f(x)) is not None] vs filtered_data = [f(x) for x in data] filtered_data = [x for x in filtered_data if x is not None]
Victor
- Previous message (by thread): [Python-Dev] The new and improved PEP 572, same great taste with 75% less complexity!
- Next message (by thread): [Python-Dev] The new and improved PEP 572, same great taste with 75% less complexity!
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]