python学习笔记——函数的使用

1. 函数的基本格式

python中用def保留字定义一个函数,语法如下:

def(函数名)<参数列表><函数体>
    return<返回值列表>

函数名可以是任何有效的Python标识符,参数列表是调用该函数时传递给它的值,可以有零个、一个或多个,当传递多个参数时各参数由逗号分隔,当没有参数时也要保留圆括号。
函数定义中参数列表里面的参数是形式参数,简称为“形参”。函数体是函数每次被调用时执行的代码,由行或多行语句组成。当需要返回值时,使用保留字return和返回值列表,函数可以没有return语句。

1.1 函数的调用

函数的调用基本语句如下:

<函数名>(<参数列表>)

此时,参数列表中要给出传入函数内部的参数,这类参数为实际参数,简称“实参

1.实例

def hard (name):
    print("{}努力学习,努力工作!".format(name))
hard("u-dream")
hard("u-dream")
-------------------------------------------------
#输出结果
u-dream努力学习,努力工作!
u-dream努力学习,努力工作!

在这个实例中,name是形参,输入的"u-dream"是实参,代替掉name,用于函数的执行。

2. 函数的调用过程

程序调用一个函数需要执行以下4个步骤。
(1)调用程序在调用处暂停执行。
(2)在调用时将实参复制给函数的形参
(3)执行函数体语句。
(4)函数调用结束给出返回值,程序回到调用前的暂停处继续执行。

3. lambda函数

3.1 语法格式

<函数名> = lambda <参数列表>:<表达式>

简单来说,lambda函数用于定义简单的,能在一行内表示的函数。
lambda函数称为“匿名函数”,但它并非没有名字,而是将函数名作为函数结果返回。

3.实例

>>> d = lambda a,b:a*b
>>> type(d)
<class 'function'>
>>> d(10,11)
110

4. 函数的参数传递

4.1 可选参数

在定义函数时,如果有些参数存在默认值,即部分参数不定需要调用程序输入,可以在定义函数时直接为这些参数指定默认值。当函数被调用时,如果没有入对应的参数值,则使用函数定义时的默认值替代。

4.1.实例

>>> def dream(str,times = 3):
 print(str*times)
>>> dream("come ture")
come turecome turecome ture     #没有入对应的参数值,则使用函数定义时的默认值替代
>>> dream("come ture",4)
come turecome turecome turecome ture

4.2 可变数量函数

设置可变数量函数,通过在参数前增加(*)实现。带有星号得可变参数只能出现在参数列表的最后。调用时,这些参数被当作元组类型传递到函数中。

4.2.实例

>>> def func(a,*b):
 for n in b:		#用n去遍历b中的元素
     a=a+n
 return a
>>> func(1,3,4,5)
13			#a被赋值1,与b组的每一个元素相加,最后返回结果

5. 函数的位置与名称的传递

函数调用时,实参默认采用按照位置顺序的方式传递给函数。这种按照位置传递参数的方法固然很好,但当参数很多时,这种调用参数的方式可读性较差。在规模稍大的程序中,函数定义可能在函数库中,也可能与调用相距很远。
为了解决上述问题,Python提供了按照形参名称输入实参的方式,通过调用函数时指定参数名称,使得参数之间的顺序可以任意调整。

5.实例

def func(x1,x2,x3,x4,x5,x6)
    return
#它可以有这么一个实际调用
result =func(1,2,3,4,5,6)
#或者这样的调用
result =func(x1=1,y1=4,x2=2,x3=3,y2=5,y3=6)	#此时它的循序是打乱的    

6. 函数的返回值

return语句用来退出函数并将程序返回到函数调用的位置继续执行。return语句可以同时将0,1或多个函数运算后的结果返回给函数被调用处的变量。
函数没有return时,,不返回值。当返回多个值时,以元组类型保存。

6.实例

>>> def func(a,b):
 return a+b
>>> s =func("dream"," come ture")
>>> print(s)
dream come ture
>>> def func(a,b):
 return b,a
>>> s = func("dream"," come ture")
>>> print(s)
(' come ture', 'dream')		#此时以元组形式保存

前4章传送门:
4.python学习笔记——random库的运用:python学习笔记——random库的运用

3.python语言学习——循环结构:python语言学习——循环结构

2.python语言学习——分支结构:python语言学习——分支结构

1.python语言学习-format语句应用:python语言学习-format语句应用

欢迎朋友萌帮我斧正,一起交流交流~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值