summaryrefslogtreecommitdiff
path: root/pylint/test/input/func_deprecated_lambda_py_30.py
blob: 74b3241a127fc70146176062d57a578407bbd9f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# pylint: disable=missing-docstring,bad-builtin,invalid-name,no-absolute-import
__revision__ = "$Id$"

import functools

# Don't do this, use a comprehension instead.
assert map(lambda x: x*2, [1, 2, 3]) == [2, 4, 6]

assert filter(lambda x: x != 1, [1, 2, 3]) == [2, 3]

# It's still ok to use map and filter with anything but an inline lambda.
double = lambda x: x * 2
assert map(double, [1, 2, 3]) == [2, 4, 6]

# It's also ok to pass lambdas to other functions.
assert functools.reduce(lambda x, y: x * y, [1, 2, 3, 4]) == 24

# Or to a undefined function or one with varargs
def f(*a):
    return len(a)

f(lambda x, y: x + y, [1, 2, 3])

undefined_function(lambda: 2)  # pylint: disable=undefined-variable