Python之函数的使用


Python函数具有许多数学函数的特点。特别是Python中的函数具有以下特点:

  • 代表执行单独的操作。
  • 采用零个或多个参数作为输入。
  • 返回值(可能是复合对象)作为输出。

一、为什么使用函数

(1)分而治之的策略。
函数把程序分成了更小的程序段,使程序编写更加容易。
(2)抽象
函数为程序的一部分提供了更高层次、更抽象的接口。通过封装细节,函数为程序员提供高层次的程序元素图,而其中的细节可以留待后续工作时再补充。
(3)重用
可以在程序中的任意位置多次调用函数。
(4)共享
可以把有效的函数分享给其他人使用。
(5)安全性
小段代码可以仔细审核,证明它的正确性,有助于建设较大规模和较安全的代码
(6)简化/可读性
程序中任何用多行代码来解决一个问题的地方,都可用函数来替换这些行。让主程序更加简单。

二、Python函数

定义

定义函数,即创建函数的过程。
一般语法为:

def  函数名(形参1,形参2,....):
		函数代码块(要执行的操作)
		return 值

需要注意的是:
(1)函数名最好和函数功能相关联,并遵循变量命名规则。例如求面积的函数,可以命名为getArea
(2)不能省略冒号
(3)函数的参数可以没有,也可以有多个。
(4)返回值可以没有,也可以返回多个值。例如下面例子中得到面积后就直接输出了,不需要返回值。

def  getArea1(n):
		area=3.14*n*n
		print(area)

但如果想要函数只计算,在主程序再输出,那么函数就得把计算结果作为返回值。如:

def  getArea2(n):
		area=3.14*n*n
		return area

调用

调用就是函数在程序中的应用。
一般格式为:

函数名(实参1,实参2...)

注意:一般地,调用函数时实参个数要和形参个数相对应。(特别的默认形参后面再提)

例如调用上面定义的函数
(1)不带返回值的函数,直接使用,如

getArea1(4)

此时调用函数getArea,并把实参4传递给形参n,n=4,然后输出50.24

(2)带返回值的函数,需要对函数返回的结果进行操作。
如:直接输出print(getArea2(4))
赋值给变量area=getArea2(4)
进行运算,例如一个面积要100元,一共需要多少元,可以price=getArea2(4)*100

参数的传递

参数值通常是根据参数的排列顺序来传递的,定义时的参数称为形参(还没有具体值,走个形式),调用时称为实参(有实际值了)。
形参和实参的名字不需要匹配
例如yushu(a,b)是计算a除以b后余数是多少的函数。调用时yushu(6,4)会根据顺序,第一个实参6传给第一个形参a第二个实参4传给第二个形参b。
此时实参和形参的数量必须一样,不然报错。

三、定义和调用

(1)调用一个函数前一定要先定义。否则会报错(如下)
在这里插入图片描述
(2)程序执行函数的先后顺序和定义的先后顺序无关,只和调用的先后顺序有关

在这里插入图片描述
(3)**定义可以在它被调用前的任意位置。**不一定要放在最前面。(但一般地,为了方便找到函数定义的位置,把它放前面了)
在这里插入图片描述

四、小练习

1、给出下列函数的输出值:
def makeOdd(n):
return 2*n+1
print(makeOdd(2))
n=3
print(makeOdd(n)
print(1 +makeOdd(3))

【参考答案】
5
7
8

2.写一个函数makeEven(n)。如果使用字符串作为参数,会发生什么情况?与实现makeodd(n)有哪些操作不同?

会报错
2*n+1中前面得到字符串重复两次的值,也是字符串,字符串和1不能相加
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值