Python_函数基础

Posted liutianyuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python_函数基础相关的知识,希望对你有一定的参考价值。

函数基础

一、什么是函数

函数是在开发语言中根据需求,实现定制好的用来实现某种功能。之后,在遇到应用场景时可以直接调用函数。

 

二、函数的分类

函数分为两类:

                          1、内置函数:为了方便开发,针对一些简单功能,Python解释器已经为我们定义好了的函数就是内置函数。

                                对于内置函数我们可以不用实现定义就可以使用。如:len()   sum()   join()等

                          2、自定义函数: 内置函数提供的功能是有限的,所以需要我们根据自身需求来事先定义函数来实现某种功能,之后再遇到其他应用场景时可以直接调用。

三、如何自定义函数

#语法
def 函数名(参数1,参数2,参数3......)
      ‘‘‘  注释 ‘‘‘
      函数体
     return 返回值
# 函数名最好能够反映其意义
def test(x):
     ‘‘‘
     2*x+1
     :param x:整形数字
     :return: 返回计算结果
     ‘‘‘
     y=2*x+1
     return y

四、函数的返回值

什么时候该有返回值?
    调用函数,经过一系列的操作,最后要拿到一个明确的结果,则必须要有返回值
    通常有参函数需要有返回值,输入参数,经过计算,得到一个最终的结果
什么时候不需要有返回值?
    调用函数,仅仅只是执行一系列的操作,最后不需要得到什么结果,则无需有返回值
    通常无参函数不需要有返回值
无return->None
return 1个值->返回1个值
return 逗号分隔多个值->元组

五、函数的参数

参数分为形参和实参:

                                  形参:形参其实就是变量名 ,函数调用时将值帮到变量名上,函数调用结束,解除绑定。

                                  实参:实参就是变量值

具体应用: 

位置参数

位置参数:按照从左到右的顺序定义的参数
        位置形参:必选参数
        位置实参:按照位置给形参传值
补充: 位置参数必须一一对应,缺一不可。
def calc(x,y): res = x**y return(res) res = calc(2,3) #位置参数

关键字参数

关键字参数:按照key=value的形式定义的实参
        无需按照位置为形参传值
        注意的问题:
                1. 关键字实参必须在位置实参右面
                2. 对同一个形参不能重复传值
def test(x,y,z):#x=1,y=2,z=3
     print(x)
     print(y)
     print(z)

#关键字参数,无须一一对应,缺一不行多一也不行
 test(1,y=2,z=3) #关键字实参必须在位置实参右面

默认参数

默认参数:形参在定义时就已经为其赋值
        可以传值也可以不传值,经常需要变得参数定义成位置形参,变化较小的参数定义成默认参数(形参)
        注意的问题:
                1. 只在定义时赋值一次
                2. 默认参数的定义应该在位置形参右面
                3. 默认参数通常应该定义成不可变类型
def handle(x,type=mysql):
     print(x)
     print(type)
 handle(hello) # 赋值给x
 handle(hello,type=sqlite) # ‘hello’赋值给x,type值覆盖成‘sqlite’

可变长参数:*列表  **字典

可变长参数:
        可变长指的是实参值的个数不固定
        而实参有按位置和按关键字两种形式定义,针对这两种形式的可变长,形参对应有两种解决方案来完整地存放它们,分别是*args,**kwargs
        def foo(x,y,*args): #列表形式存放
            print(x,y)
            print(args)
        foo(1,2,3,4,5)

        def foo(x,y,**kwargs):  #字典形式存放
            print(x,y)
            print(kwargs)
        foo(1,y=2,a=1,b=2,c=3)

 


以上是关于Python_函数基础的主要内容,如果未能解决你的问题,请参考以下文章

13 个非常有用的 Python 代码片段

python基础函数_函数及调用

Python 函数声明和调用

Python基础之装饰器

Python-基础知识-编码和函数

python基础_函数