Nest all content into snippets
This commit is contained in:
23
snippets/python/s/when.md
Normal file
23
snippets/python/s/when.md
Normal file
@ -0,0 +1,23 @@
|
||||
---
|
||||
title: Apply function when true
|
||||
type: snippet
|
||||
language: python
|
||||
tags: [function]
|
||||
cover: interior-10
|
||||
dateModified: 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()` is `True` for `x` and if so call `when_true()`, otherwise return `x`.
|
||||
|
||||
```py
|
||||
def when(predicate, when_true):
|
||||
return lambda x: when_true(x) if predicate(x) else x
|
||||
```
|
||||
|
||||
```py
|
||||
double_even_numbers = when(lambda x: x % 2 == 0, lambda x : x * 2)
|
||||
double_even_numbers(2) # 4
|
||||
double_even_numbers(1) # 1
|
||||
```
|
||||
Reference in New Issue
Block a user