函数的定义和参数

一、函数的定义

什么是函数

在程序中,函数就是具备某一功能的工具,事先将工具准备好就是函数的定义,遇到应用场景拿来就用就是函数的调用

为什么要用函数

函数可以使程序分块化,增加程序的扩展性和可读性

怎么用函数

先定义,后调用

定义函数

 def 函数名():  # 定义阶段(造车轮阶段)
     """函数注释写在这里"""  # 函数相当于工具, 注释相当于工具的说明书
     <代码块>

注意:函数定义阶段,只检测语法,不执行函数体代码

调用函数

 # 使用  # 调用阶段(开车阶段)
 函数名()

执行函数代码

二、定义函数的三种方式

1.无参函数

在函数阶段括号内没有参数,称为无参函数。注意:定义时无参,意味着调用时也无需传入参数。

 ef func():
     print('hello llj')
     
 func()  # hello llj

2.有参函数

在函数定义阶段括号内有参数,称为有参函数。注意:定义时有参,意味着调用时也必须传入参数

 ef sum_self(x, y):
     """求和"""
     res = x+y
     print(res)
 
 sum_self(1,2)  # 3

3.空函数

 def func():
     pass

三、函数的参数

1.形参和实参

1.1形参

在函数定义阶段括号内定义的参数,称之为形式参数,简称形参,本质就是变量名。

 def func(x, y):
     print(x)
     print(y)

1.2实参

 func(1, 2)

2.位置参数

2.1位置形参

在函数定义阶段,按照从左到右的顺序依次定义的形参,称之为位置形参。

 def func(x, y): #x,y就是位置形参
     print(x)
     print(y)

2.位置实参

 func(1, 2)

3.关键字实参

在调用函数时,按照key=value的形式为指定的参数传值,称为关键字实参。

 func(y=1, x=2)

特点:可以打破位置的限制,但仍能为指定的形参赋值。

注意:

  1. 可以混用位置实参和关键字实参,但是位置实参必须在关键字实参的左边。

  2. 可以混用位置实参和关键字实参,但不能对一个形参重复赋值。

     

4.默认形参

在定义阶段,就已经被赋值。

 def func(x, y=10): #y为默认形参
     print(x)
     print(y)
     
 func(2)

特点:在定义阶段就已经被赋值,意味着在调用时可以不用为其赋值。

注意:

  1. 位置形参必须放在默认形参的左边。

  2. 默认形参的值只在定义阶段赋值一次,也就是说默认参数的值在函数定义阶段就已经固定了。

原文地址:https://www.cnblogs.com/lulingjie/p/11322042.html