8.1 函数简介
- 函数也是一个对象
- 函数用来保存一些可执行的代码,且可以在需要时,对这些语句进行多次调用
语法
def 函数名([形参1, 形参2, 形参3…]):
代码块
- 注意:函数名必须符合标识符的规范(可以包含字母、数字、下划线但是不能以数字开头)
- print是函数对象 print()是函数调用
- 函数的特点:
- 函数中可以用来保存一些可执行的代码,在你需要的时候可以对这些代码进行多次调用
- 函数中保存的代码不会立即执行,需要调用函数的时候代码才会执行
def fun(): # 自定义函数 fun是函数名,又可以称呼为函数对象
print('这是我的第一个python函数')
fun() # 函数的调用
C:\Python36\python.exe C:/Python学习/函数的简介.py
这是我的第一个python函数
Process finished with exit code 0
- 注意:在函数的调用之前必须先对函数进行定义
8.2 函数的参数
def fun(): # 简单的函数定义
a = 1
b = 2
print(a + b)
fun()
def fun1(a, b): # 函数的参数相当于在函数内部定义了这两个变量,但并没有给他们进行复制,a,b就是一个形参(形式上的参数)
print(a + b)
fun1(1,2) # 调用函数,如果有形参,那么必须传递实参(实际的参数),且形参数目等于实参数目
8.3 参数的传递形式
- 位置传参:将对应位置上的实参赋值给对应位置上的形参
def fun(a, b, c=20): # c =20,这是给c设置了一个默认值,可以不传递这个参数的实参,可以不传递该参数的实参,此时该参数的值为默认值,但是若传递了实参,那就会覆盖掉默认值
print(a)
print(b)
print(c)
fun(1, 2) # 此处可以传递2个实参或者3个实参
fun(1, 2, 3)
C:\Python36\python.exe C:/Python学习/函数的简介.py
1
2
20
1
2
3
Process finished with exit code 0
- 关键字传参:可以不按照定义形参的顺序取传递实参,根据参数名进行传递参数
def fun(a, b, c=20):
print(a)
print(b)
print(c)
fun(a = 1, c = 3, b = 2)
C:\Python36\python.exe C:/Python学习/函数的简介.py
1
2
3
Process finished with exit code 0
- 位置传参和关键字传参的混合使用:位置传参必须放到关键字传参前面
def fun(a, b, c=20):
print(a)
print(b)
print(c)
fun(a = 1, 2, c = 3) # 这是错误的传递
fun(2, a = 1, c = 3) # 这是错误的传递
fun(1