578 B
578 B
title, tags, expertise, firstSeen, lastUpdated
| title | tags | expertise | firstSeen | lastUpdated |
|---|---|---|---|---|
| Apply function when true | function | intermediate | 2020-01-02T20:25:45+02:00 | 2020-11-09T23:56:11+02:00 |
Tests a value, x, against a testing function, conditionally applying a function.
- Check if the value of
predicate()isTrueforxand if so callwhen_true(), otherwise returnx.
def when(predicate, when_true):
return lambda x: when_true(x) if predicate(x) else x
double_even_numbers = when(lambda x: x % 2 == 0, lambda x : x * 2)
double_even_numbers(2) # 4
double_even_numbers(1) # 1