blog/docs/code/python/func.md

2.6 KiB
Raw Blame History

title date tags categories author
函数 2020-09-12 17:25:10
Python
Python
Anges黎梦

定义

函数也称为定义函数,可以理解为某一种作用的代码块。

优点

  • 更简洁的代码
  • 代码重用
  • 易于测试
  • 快速开发
  • 便于团队合作

创建一个函数

示例代码

# 使用def关键字创建def + 函数名(参数)+ ":"
def func_name(param):
    # 函数注释   
    """
    定义一个函数
    """
    # 函数内实现功能的代码块
    print(param)

函数调用

直接调用

示例代码

# 函数调用,函数名() 若无参数则为空括号
func_name("黎梦")

函数传参

函数的参数

  • 函数中的参数,可以为空。
  • 可选参数,一般是包含,固定参数(形式参数)、可变参数

形式参数和实际参数

作用

  • 形式参数:在定义函数时,函数名后面括号内的参数为“形式参数”,也称为形参

  • 实际参数:在调用一个函数时,函数名后面括号内的参数,为“实际参数”。函数调用者提供给函数的参数,叫实际参数,也称为实参。

按照参数位置调用

按照正确的顺序传递到函数中。

示例代码

def func_1(a, b):
    print("a的值为{}".format(a))
    print("b的值为{}".format(b))
func_1(1,2)
func_1(2,1)

实际调用时,实参的数量要与形参一致 报错示例

func_1(1)

报错信息

TypeError: func_1() missing 1 required positional argument: 'b'

关键字调用

根据参数关键字调用

示例代码

func_1(b=6, a=3)

参数默认值

示例代码

def func_2(a=1):
    print("a的值为{}".format(a))

响应结果

func_2()    # a的值为1

函数参数顺序,普通形式参数 > 有默认值的参数

异常场景

示例代码

def func_3(b, a=[]):
    # 带默认值的参数,会在定义函数时,定义,而不是在每次调用时定义。
    a.append(b)
    print(a)
func_3(b=1)
func_3(b=2)
func_3(b=5, a=[])

返回值 return

  • 函数调用,可接收返回值
  • 若函数没有return关键字定义返回值那么返回内容为None 空

示例代码

def func_4():
    return "ok"
res1 = func_3(b=4)
res2 = func_4()
print(res1)
print(res2)

占位符 pass

示例代码

# 表示空语句,不做任何操作,一般起到占位置的作用。
def decs():
    pass