函数基础
所谓函数,就是把具有独立功能的代码块组织为一个小模块,在需要的时候调用
函数的使用包含两个步骤:
- 定义函数 -- 封装独立的功能
- 调用函数 -- 享受封装的成果
函数的作用,在开发程序的时,使用函数可以提高编写的效率以及代码的重用。
函数的定义
定义函数的格式如下:
def 函数名(): 函数封装的代码
- def 是英文define 的缩写
- 函数名称应该能够表达函数的封装代码的功能,方便后续的调用
- 函数名称的命名应该符合标识符的命名规则
-
- 可以由字母、下划线和数字组成
- 不能以数字开头
- 不能与关键字重名
函数的调用
调用函数很简单,通过 函数名() 即可完成对函数的调用
def say_hello(): """打招呼""" print("hello 1") print("hello 2") print("hello 3") #只有在程序中,主动调用函数,才会让函数执行 say_hello()
能否将函数调用放在函数定义的上方?
答:否;因为在使用函数名调用函数之前,必须要保证python已经知道函数的存在,否则会报NameError
函数的参数
def sum_2_num(): """对两个数字的求和""" num1 = 10 num2 = 20 reslut = num1 + num2 print("%d + %d = %d" % (num1,num2,reslut)) sum_2_sum()
以上定义的函数代码存在只能处理固定数值的相加
如何解决?
在调用函数的时候,传递到函数内部
函数参数的使用
def sum_2_num(num1,num2): """对两个数字的求和""" reslut = num1 + num2 print("%d + %d = %d" % (num1,num2,reslut)) sum_2_sum(20,50)
函数参数的作用
- 函数,把具有独立功能的代码块组织为一个小模块,在需要的时候调用
- 函数的参数,增加函数的通用性,针对相同的数据处理逻辑,能够适应更多的数据
- 在函数的内部,把参数当做变量使用,进行需要的数据处理
- 函数调用时,按照函数定义的参数顺序,把希望在函数内部处理的数据,通过参数传递
形参和实参
- 形参:定义函数时,小括号中的参数,是用来接受参数用的,在函数内部作为变量使用
- 实参:调用函数时,小括号中的参数,是用来把数据传递到函数内部用的
函数的返回值
- 一个函数执行结果后,告诉调用者一个结果
- 返回值是函数完成工作后,最后给调用者的一个结果
- 在函数中使用,return关键字可以返回结果
- 调用函数一方,可以使用变量来接收函数的返回结果
注意:return表示返回,后续的代码都不会执行
def sum_2_num(num1,num2): """对两个数字求和""" reslut = num1 + num2 # 可以使用返回值,告诉调用函数一方计算的结果 return reslut # 可以使用变量 来接收函数执行的返回结果 sum_reslut = sum_2_num(10,20) print("计算结果:%d" %sum_reslut)
函数的嵌套调用
- 一个函数里面又调用了另外一个函数,这就是函数的嵌套调用
- 如果函数test2中,调用了另外一个函数test1
- 那么执行到调用test1函数时,会先把函数test1中的任务都执行完
- 才会回到test2中调用函数test1的位置,继续执行后续的代码
def test1(): print("*" * 50) def test2(): print("-" * 50) # 函数的嵌套使用 test1() test2()