Python函数

数学上的函数,是指给定一个输入,就会有唯一输出的一种对应关系。编程语言里的函数跟这个意思差不多,但也有不同。函数就是一块语句,这块语句有个名字,你可以在需要时反复地使用这块语句。它有可能需要输入,有可能会返回输出。

 

举一个现实中的场景:我们去餐厅吃饭,跟服务员点了菜,过了一会儿,服务员把做好的菜端上来。餐厅的厨房就可以看作是一个函数,我们点的菜单,就是给这个函数的参数;厨师在厨房里做菜的过程就是这个函数的执行过程;做好的菜是返回结果,返回到我们的餐桌上。

 

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

 

以range(1,10)为例,range是这个函数的名称,后面括号里的1和10是range需要的参数。它有返回结果,就是一个从1到9的序列。

 

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

 

PS:range还可以接受1个或3个参数,input也可以接受1个字符串参数。可以等我以后讲,或去查阅相关资料了解详细。

 

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

 

def sayHello():

   print 'hello world!'

 

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

 

然后我们去调用这个函数:

 

sayHello()

 

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

 

 

上面我们讲了怎样定义一个自己的函数,但我们没有给他提供输入参数的功能。不能指定参数的函数就好比你去餐厅吃饭,服务员告诉你,不能点菜,有啥吃啥。这显然不能满足很多情况。

 

所以,如果我们希望自己定义的函数里允许调用者提供一些参数,就把这些参数写在括号里,如果有多个参数,用逗号隔开,如:

 

def sayHello(someone):

   print someone + ' says Hello!'

 

或者

 

def plus(num1, num2):

   print num1+num2

 

参数在函数中相当于一个变量,而这个变量的值是在调用函数的时候被赋予的。在函数内部,你可以像过去使用变量一样使用它。

 

调用带参数的函数时,同样把需要传入的参数值放在括号中,用逗号隔开。要注意提供的参数值的数量和类型需要跟函数定义中的一致。如果这个函数不是你自己写的,你需要先了解它的参数类型,才能顺利调用它。

 

比如上面两个函数,我们可以直接传入值:

 

sayHello('Crossin')

还是注意,字符串类型的值不能少了引号。

 

或者也可以传入变量:

 

x = 3

y = 4

plus(x, y)

 

在这个函数被调用时,相当于做了num1=x, num2=y这么一件事。所以结果是输出了7。

 

转载自 Crossin的编程教室  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值