陈两岁|函数式编程( 五 )


好了 , 在读过这么多的程序后 , 你可以回头看一下这篇文章的开头对函数式编程的描述 , 可能你就更有感觉了 。
最后 , 我希望这篇浅显易懂的文章能让你感受到函数式编程的思想 , 就像OO编程 , 泛型编程 , 过程式编程一样 , 我们不用太纠结是不是我们的程序就是OO , 就是functional的 , 我们重要的品味其中的味道 。
参考
Wikipedia:FunctionalProgramming
trulyunderstandingthedifferencebetweenproceduralandfunctional
Apracticalintroductiontofunctionalprogramming
Whatisthedifferencebetweenproceduralprogrammingandfunctionalprogramming?
Cansomeonegivemeexamplesoffunctionalprogrammingvsimperative/proceduralprogramming?
OOPvsFunctionalProgrammingvsProcedural
Python–FunctionalProgrammingHOWTO
感谢谢网友提供的shell风格的pythonpipeline:
classPipe(object):def__init__(self,func):self.func=funcdef__ror__(self,other):defgenerator:forobjinother:ifobjisnotNone:yieldself.func(obj)returngenerator@Pipedefeven_filter(num):returnnumifnum%2==0elseNone@Pipedefmultiply_by_three(num):returnnum*3@Pipedefconvert_to_string(num):return'TheNumber:%s'%num@Pipedefecho(item):printitemreturnitemdefforce(sqs):foriteminsqs:passnums=[1,2,3,4,5,6,7,8,9,10]force(nums|even_filter|multiply_by_three|convert_to_string|echo)
(完)
Python学习交流群
【陈两岁|函数式编程】为了让大家更加即时地沟通学习 , 我们建了一个Python学习交流群 , 有想入群的同学 , 可以添加下面小助手微信 , 他会拉大家入群哈~