一、函数的定义及调用
def 函数名():
函数体
函数名()
def 函数名(参数1,参数2,*args,默认参数,**kwargs): 函数体 …… return 返回值
def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":"。
def 是固定的,不能变,必须是连续的def三个字母,不能分开。。。它们要相亲相爱的在一起。
空格 为了将def关键字和函数名分开,必须空(四声),当然你可以空2格、3格或者你想空多少都行,但正常人还是空1格。
二、返回值
1、return的作用
1)结束一个函数的执行
2)返回要返回的值
2、没有返回值
没有return
只有一个return
return None
3、只有一个返回值
#函数定义 def mylen(): """计算s1的长度""" s1 = "hello world" length = 0 for i in s1: length = length+1 return length #函数调用 str_len = mylen() print('str_len : %s'%str_len)
4、有多个返回值
def ret_demo1(): '''返回多个值''' return 1,2,3,4 def ret_demo2(): '''返回多个任意类型的值''' return 1,['a','b'],3,4 ret1 = ret_demo1() print(ret1) ret2 = ret_demo2() print(ret2)
返回的多个值会被组织成元组被返回,也可以用多个值来接收
三、参数
1、实参
我们调用函数时传递的这个“hello world”被称为实际参数,因为这个是实际的要交给函数的内容,简称实参。
按位置传参
按关键字传值
2、形参
定义函数时的s1,只是一个变量的名字,被称为形式参数,因为在定义函数的时候它只是一个形式,表示这里有一个参数,简称形参。
位置参数
动态参数(*args)
默认参数
动态参数(**kwargs)