Functional Programming in Python          (в примерах)            Артем Дударев    кофе-и-код, Донецк, январь 2011
Новые подписчики
Форматирование осиax = axes([0.15, 0.22, 0.75, 0.75])yAxis = ax.yaxisyAxis.set_major_formatter(    ticker.FuncFormatter(  ...
Нет switch{option1: function1, option2: function2, option3: function3}[value]()result = {  a: lambda x: x * 5,  b: lambda ...
Присвоить две переменные из strcoord_str = 48,37lat,lon = map(float, coord_str.split(,))print lat,lon# 48.0 37.0",".join(m...
Сортировать один список на основедругогоdef psort4(s1, s2):    _indices = range(len(s1))    _indices.sort(key=s2.__getitem...
Удаление элементов из спискаa=range(10)for item in a:    if item<5:        a.remove(item)print a# Вернет [1, 3, 5, 6, 7, 8...
Linkdump • Guido van Rossum о происхождении элементов   ФП в Python • Перевод поста на Хабре • Python Functional Programmi...
Credits • картинка слона (блог Thomas Guest) • rst2pdf • частично использовался стиль от Alexis Métaireau • ссылка на github
Upcoming SlideShare
Loading in …5
×

Functional Programming in Python

1,344
-1

Published on

Examples of

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,344
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Functional Programming in Python

  1. 1. Functional Programming in Python (в примерах) Артем Дударев кофе-и-код, Донецк, январь 2011
  2. 2. Новые подписчики
  3. 3. Форматирование осиax = axes([0.15, 0.22, 0.75, 0.75])yAxis = ax.yaxisyAxis.set_major_formatter( ticker.FuncFormatter( lambda x, pos: str(x) if x%2 == 0 else ))код на github
  4. 4. Нет switch{option1: function1, option2: function2, option3: function3}[value]()result = { a: lambda x: x * 5, b: lambda x: x + 7, c: lambda x: x - 2}[value](x)обсуждениееще на stackoverflow.com
  5. 5. Присвоить две переменные из strcoord_str = 48,37lat,lon = map(float, coord_str.split(,))print lat,lon# 48.0 37.0",".join(map(str, (lat,lon)))# 48.0,37.0
  6. 6. Сортировать один список на основедругогоdef psort4(s1, s2): _indices = range(len(s1)) _indices.sort(key=s2.__getitem__) s1[:] = map(s1.__getitem__, _indices)несколько способов делать это (этот самыйбыстрый)
  7. 7. Удаление элементов из спискаa=range(10)for item in a: if item<5: a.remove(item)print a# Вернет [1, 3, 5, 6, 7, 8, 9]filter(lambda x: x>=5, a)[i for i in a if i>=5] # list comprehension# Вернут [6, 7, 8, 9]# Список а остался неизменнымиз недавней заметки на Хабре
  8. 8. Linkdump • Guido van Rossum о происхождении элементов ФП в Python • Перевод поста на Хабре • Python Functional Programming HOWTOОсновная мысль:lambda, map, filter, reduce вводились каксинтаксический сахарсейчас чаще употребляются итераторы, генераторы,list comprehension
  9. 9. Credits • картинка слона (блог Thomas Guest) • rst2pdf • частично использовался стиль от Alexis Métaireau • ссылка на github
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×