【Python 第19课】函数


数学上的函数,是指给定一个输入,就会有唯一输出的一种对应关系。编程语言里的函数跟这个意思差不多,但也有不同。

编程中所说的函数,就是一堆语句组成的语句块,这个语句块有个名字,你可以在需要时反复地使用这块语句。它有可能需要输入,有可能会返回输出。

 

举一个现实中的场景:我们去餐厅吃饭,跟服务员点了菜,过了一会儿,服务员把做好的菜端上来。

  1. 餐厅的厨房就可以看作是一个函数
  2. 我们点的菜单,就是给这个函数的参数(对函数来说就是输入)
  3. 厨师在厨房里做菜的过程就是这个函数的执行过程
  4. 做好的菜是返回结果,返回到我们的餐桌上(函数的返回值)

 

我们之前已经用到过 python 里内建的函数,比如 input 和 range。

 

range(1,10) 为例,range 是这个函数的名称,后面括号里的1和10是 range 需要的参数。它有返回结果,就是一个从1到9的序列生成器(暂时你可以理解为,就是1~9九个数字)。

 

再来看 input(),括号里面什么都没有,表示我们没有给参数。函数执行过程中,需要我们从控制台输入一个值。函数的返回结果就是我们输入的内容。

 

PS:range 还可以接受1个或3个参数,input也可以接受1个字符串参数。可以等我之后几课来讲,或者尝试在网上搜索下“python range 参数”。

 

如果我们要自己写一个函数,就需要去 定义 它。python里的关键字叫 def(define的缩写),格式如下:

def sayHello():
   print ('hello world!')

 

sayHello 是这个函数的名字,后面的括号里是参数,这里没有,表示不需要参数。但括号和后面的冒号都不能少。下面缩进的代码块就是整个函数的内容,称作函数体。

 

然后我们去调用这个函数,就是用函数名加上括号,有必要的话,括号里放参数:

sayHello()

 

得到和直接执行print ('hello world!')一样的结果。

 

 

来源:Crossin的编程教室