Python函数和函数式编程

2017-08-09  本文已影响0人  c84f3109853b

11.1 什么是函数

函数是对程序逻辑进行结构化或过程化的一种编程方法。能降整块代码巧妙地隔离成易于管理的小块,把重复代码放到函数中而不是进行大量的拷贝--这样既能节省空间,也能有助于保持一致性,因为你只需改变单个的拷贝而无须去寻找再修改大量复制代码的拷贝。

11.1.1 函数vs过程

两者都是可以被调用的实体,但是传统意义上的函数或者“黑盒“,可能不带任何输入参数,经过一定的处理,最后向调用者传回返回值。其中一些函数则是布尔类型的,返回一个”是“或者”否“的回答,更确切地说,一个非零或者零值。而过程是简单、特殊、没有返回值的函数。从后面内容你会看到,python的过程就是函数,因为解释器会隐式地返回默认值None。

11.1.2 返回值与函数类型

函数会向调用者返回一个值,而实际编程中大偏函数更接近过程,不显示地返回任何东西。把过程看待成函数的语言通常对于”什么都不返回“的函数设定了特殊的类型或者值的名字。这些函数在c中默认为”void“的返回类型,意思是没有值返回。在python中,对应的返回对象类型是none。

许多静态类型的语言主张一个函数的类型就是其返回值的类型。在python中,由于python是动态地确定类型而且函数能返回不同类型的值,所以没有进行直接的类型关联。因为重载并不是语言特性,程序员需要使用type()这个内建函数作为代理,来处理有着不同参数类型的函数的多重声明以模拟C语言的函数重载(以参数不同选择函数的多个原型)。

上一篇下一篇

猜你喜欢

热点阅读