函数的定义
如果在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数
函数的定义和调用
定义函数
def 函数名(): 代码
demo:
# 定义一个函数,来打印信息 def print_msg(): print("======================") print(" Hello Python") print("======================")
调用函数
定义了函数之后,就相当于有了一个具有某些功能的代码,想要让这些代码能够执行,需要调用它
调用函数很简单的,通过 函数名() 即可完成调用
demo:调用上面定义的print_msg函数print_msg()
函数的文档说明
函数的参数
定义带有参数的函数:
def sum_num(a, b): print a + b
调用带有参数的函数(以商贸的sum_num函数为例)
sum_num(11,22)
注意:调用带有参数的函数,一定要注意参数的顺序,要一一对应
- 小总结:
- 定义参数时小括号中的参数,是用来接收参数用的,叫做形参
- 调用函数时小括号中的参数,是用来传递给函数的,叫做实参
缺省参数
缺省参数就是给参数指定一个默认值,但是要注意:缺省参数不能作为第一个参数。def print_msg(name,profession="student"): print("name:%s" % name) print("profession: %s" % profession) print_msg(name="zhangsan")
不定长参数
有时可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,声明时不会命名。
基本语法如下:def 参数名[参数1, *args, **kwargs]: 执行的代码
加了星号的变量args会存放所有未命名的变量参数,args为元组;而加**的变量kwargs会存放命名参数,即形如key=value的参数, kwargs为字典。
引用参数
Python中函数参数是引用传递(注意不是值传递)。对于不可变类型,因变量不能修改,所以运算不会影响到变量自身;而对于可变类型来说,函数体中的运算有可能会更改传入的参数变量。
函数的返回值
所谓“返回值”,就是程序中函数完成一件事情后,最后给调用者的结果
def add2num(a, b): c = a+b return c
或者
def add2num(a, b): return a+b
- 当函数有多个返回值时,是可以用return一起返回的,返回值之间是有逗号隔开