added comments. revised redundancy at the start. (#21251)
and minor spelling edits
This commit is contained in:
@ -3,16 +3,15 @@ title: Lambda Expressions
|
|||||||
---
|
---
|
||||||
## Lambda Expressions
|
## Lambda Expressions
|
||||||
|
|
||||||
Lambda Expressions are ideally used when we have something simple to be done an we are more interested in quickly getting the job done rather than formally naming the function. Lambda expressions also known as anonymous functions.
|
Lambda Expressions are ideally used when we have something simple to be done an we are more interested in quickly getting the job done rather than formally naming the function. Lambda expressions are a short way to declare small and anonymous functions (it is not necessary to provide a name for lambda functions) in a concise way.
|
||||||
<a href='https://github.com/freecodecamp/guides/tree/master/src/pages/python/lambda-expressions/index.md' target='_blank' rel='nofollow'>Help our community expand it</a>.
|
<a href='https://github.com/freecodecamp/guides/tree/master/src/pages/python/lambda-expressions/index.md' target='_blank' rel='nofollow'>Help our community expand it</a>.
|
||||||
|
|
||||||
Lambda Expressions in Python are a short way to declare small and anonymous functions (it is not necessary to provide a name for lambda functions). Lambda functions behave just like regular functions declared with the `def` keyword. They come in handy when you want to define a small function in a concise way. They can contain only one expression, so they are not best suited for functions with control-flow statements.
|
Lambda functions can contain only one expression, so they are not best suited for functions with control-flow statements.
|
||||||
master
|
|
||||||
|
|
||||||
#### Syntax of Lambda Function
|
#### Syntax of Lambda Function
|
||||||
`lambda arguments: expression`
|
`lambda arguments: expression`
|
||||||
|
|
||||||
Lambda functions can have any number of arguments but only one expression
|
Lambda functions can have any number of arguments but only one expression.
|
||||||
|
|
||||||
#### Example code
|
#### Example code
|
||||||
```py
|
```py
|
||||||
@ -38,14 +37,14 @@ lambda_func(3) # Returns 9
|
|||||||
```
|
```
|
||||||
### Intermediate
|
### Intermediate
|
||||||
```py
|
```py
|
||||||
lambda_func = lambda x: True if x**2 >= 10 else False
|
lambda_func = lambda x: True if x**2 >= 10 else False # Function that returns True if the square of x >= 10
|
||||||
lambda_func(3) # Returns False
|
lambda_func(3) # Returns False (3**2 = 9, which is < 10)
|
||||||
lambda_func(4) # Returns True
|
lambda_func(4) # Returns True (4**2 = 16, which is >= 10)
|
||||||
```
|
```
|
||||||
### Complex
|
### Complex
|
||||||
```py
|
```py
|
||||||
my_dict = {"A": 1, "B": 2, "C": 3}
|
my_dict = {"A": 1, "B": 2, "C": 3}
|
||||||
sorted(my_dict, key=lambda x: my_dict[x]%3) # Returns ['C', 'A', 'B']
|
sorted(my_dict, key=lambda x: my_dict[x]%3) # Returns ['C', 'A', 'B'] # sort dict by the values % 3 (remainders from division by 3)
|
||||||
```
|
```
|
||||||
### Use-case
|
### Use-case
|
||||||
|
|
||||||
@ -63,7 +62,7 @@ print(filtered) # Python 2: print filtered
|
|||||||
# [1, 3, 5, 7, 9]
|
# [1, 3, 5, 7, 9]
|
||||||
```
|
```
|
||||||
|
|
||||||
You could write this as a one liner with list-comprehensions
|
You could write this as a one-liner with list-comprehensions
|
||||||
|
|
||||||
```python
|
```python
|
||||||
filtered = [x for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] if x % 2 != 0]
|
filtered = [x for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] if x % 2 != 0]
|
||||||
|
Reference in New Issue
Block a user