Уведомления

Группа в Telegram: @pythonsu

#1 Май 20, 2014 18:12:19

GreyZmeem
От: Киев
Зарегистрирован: 2013-12-03
Сообщения: 147
Репутация: +  34  -
Профиль   Отправить e-mail  

lambda

d3z0x77+rsmqbc
map(method, iterable) - применяет method на каждый объект из iterable и возращает новый список, который состоит из того, что вернулось из method.
Пример:

>>> a = 'asd123zxc567'
>>> map(lambda x: x.isdigit(), a)
[False, False, False, True, True, True, False, False, False, True, True, True]
>>>
filter(method, iterable) - применяет method на каждый объект из iterable и возращает новый список, который состоит из элементов на которых method вернул True
Пример:
>>> a = 'asd123zxc567'
>>> filter(lambda x: x.isdigit(), a)
'123567'
>>> a = ['1', '2', 'a', 'b', '3']
>>> filter(lambda x: x.isdigit(), a)
['1', '2', '3']
>>>

Офлайн

#2 Май 20, 2014 23:41:39

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

lambda

d3z0x77+rsmqbc
почему так происходит

>>> filter(lambda x: True, [None, 0, 1, 'a'])
[None, 0, 1, 'a']
>>> filter(lambda x: False, [None, 0, 1, 'a'])
[]
>>> filter(lambda x: x, [None, 0, 1, 'a'])
[1, 'a']
>>> filter(lambda x: type(x) is int, [None, 0, 1, 'a'])
[0, 1]
>>> filter(lambda x: type(x) is not int, [None, 0, 1, 'a'])
[None, 'a']
>>>

GreyZmeem
map(method, iterable)
GreyZmeem
filter(method, iterable)

Всё правильно, человек перепутал filter и map.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version