Форум сайта python.su
Читаю книгу, и там есть такой пример.
a=
map((lambda x: x+3), a)
должно вернуть а ничего не происходит,как вернуть список, в чем засада?
Офлайн
Что-то вы делаете не так. У меня лично работает.
выложите весь скрипт плиз.
Офлайн
cutwaterЭто не большие примерчики из книги как работает и как лучше, возвращает список почему то только цикл for, пробую на питоне 2.6.2!
Что-то вы делаете не так. У меня лично работает.
выложите весь скрипт плиз.
Офлайн
MalinaizerРазобрался он работает в интерактивном режиме а когда файл запускаешь надо принт перед функцией ставить!))))
Офлайн
map возвращает итератор вместо списка.
Офлайн
Dimka665Вы ничего не путаете? итератор возвращает imap из модуля itertools
map возвращает итератор вместо списка.
Офлайн
В py3k возвращаемое значение мигировало из списка в итератор . Так что правы все :)
Офлайн
Вы всё не правильно делатете, питонист должен писать так:
>>> map((3).__add__, )
Лямба - для новичков :-).
p.s. Да, да. Я знаю, что истинный профи будет писать curry(operator.add, 3), но для этого нужен curry, как я понимаю, он пока ни в каком виде не включен в стандартный набор модулей?!
..bw
Офлайн
bw
p.s. Да, да. Я знаю, что истинный профи будет писать curry(operator.add, 3), но для этого нужен curry, как я понимаю, он пока ни в каком виде не включен в стандартный набор модулей?!
from functools import partial
map(partial(operator.add, 3), [1,2,3,4])
Офлайн
Здорово, спасибо, не знал.
p.s. Это чудо появилось в 2.5, а я еще активно использую 2.4.
..bw
Отредактировано (Апрель 22, 2009 11:37:26)
Офлайн