详解python普通函数创建与调用

描述

python普通函数创建与调用

函数是一种仅在调用时运行的代码块。您可以将数据(称为参数)传递到函数中,然后由函数可以把数据作为结果返回。

如果将函数比喻成蛋糕店的话,那么函数的参数就是生产蛋糕的原材料,而函数的返回值就是蛋糕成品。

1. 函数的创建

在 Python 中,使用 def 关键字定义函数

def 函数名(参数):    # 内部代码    return 表达式

举个例子,我这边手动实现一个计算两个数平均值的函数,这边这样子写

def get_average(a, b):
    '''
    计算平均值
    '''
    result = (a + b)/2
    return result

在定义函数的过程中,需要注意以下几点:

函数代码块以def关键词开头,一个空格之后接函数标识符名称和圆括号(),再接个冒号。

任何传入的参数必须放在圆括号中间。

函数的第一行语句后可以选择性地使用文档字符串—用于存放函数说明。

函数内容以冒号起始,并且缩进。

使用return,返回值给调用者,并结束函数。return 关键并不是必须要加,可根据实际需要决定是否要写,若不写的话,默认返回None。

return语句依然在函数体内部,不能回退缩进。直到函数的所有代码写完,才回退缩进,表示函数体结束。

2. 函数的调用

函数编写出来就是给人调用的。要调用一个函数,必须使用函数名后跟圆括号的方式才能调用函数。

调用的同时要根据函数的定义体,提供相应个数和类型的参数,每个参数之间用逗号分隔。

def get_average(a, b):
    '''
    计算平均值
    '''
    result = (a + b)/2
    return result
average = get_average(2, 6)
print(average)  # output: 4

4. 函数的返回

函数的返回值,可以是多种多样的,非常灵活:

可以是任意类型的对象,比如字符串,数值,列表,字典等等

def demo_func():
    return 10

可以是一个表达式,函数会直接运行表达式,然后返回

def get_average(a, b):
    return (a + b)/2

可以是函数本身,利用这点可以实现递归调用。

def fact(n):
    if n==1:
        return 1
    return n * fact(n - 1)

另外还可以返回多个值

def demo_func():
    return 1,2.3

可以是其他函数,利用这点可以实现装饰器

def decorator(func):
    def wrapper(*args, **kw):
        return func()
    return wrapper

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分