一.函数定义及调用
定义:def 关键词开头,空格之后接函数名称和圆括号(),然后接一个":"。
空格 为了将def关键字和函数名分开,当然可以空2格、3格或者空更多都行,但一般还是空1格。
函数名:函数名只能包含字符串、下划线和数字且不能以数字开头。符合变量名命名规则。
括号:是必须加的。
注释:每一个函数都应该对功能和参数进行相应的说明,应该写在函数下面第一行。以增强代码的可读性。
调用:就是 函数名() 要记得加上括号。
二.函数的返回值
return关键字的作用
return 是一个关键字,在pycharm里,你会看到它变成蓝色。
这个词翻译过来就是“返回”,所以我们管写在return后面的值叫“返回值”
返回值有三种情况:分别是没有返回值、返回一个值、返回多个值
1.没有返回值
不写return的情况下,会默认返回一个None。
只写return,后面不写其他内容,也会返回None
很多人会问:不写return也是返回None,为什么还要写呢?
因为,函数遇到return就停止了
2.返回一个值
返回一个值的情况,只需在return后面写上要返回的内容即可。
3.返回多个值
可以返回任意多个、任意数据类型的值
返回的多个值会被组织成元组被返回,也可以用多个值来接收
三.函数的参数
1.实参与形参
我们调用函数时传递的数据被称为实际参数,因为这个是实际的要交给函数的内容,简称实参。
定义函数时括号里的内容,只是一个变量的名字,被称为形式参数,因为在定义函数的时候它只是一个形式,表示这里有一个参数,简称形参
2.传递多个参数
参数可以传递多个,多个参数之间用逗号分割。
3.位置参数
站在实参角度
1.按照位置传值
2.按照关键字传值
3.位置、关键字形式混着用
站在形参角度
位置参数必须传值
4.默认参数
1.为什么要有默认参数:将变化比较小的值设置成默认参数
2.默认参数也叫关键字参数
3.参数陷阱:默认参数是一个可变数据类型
def defult_param(a,l = []): l.append(a) print(l) defult_param(‘alex‘) defult_param(‘egon‘)
5.动态参数
按位置传值多余的参数都由args统一接收,保存成一个元组的形式
原文:https://www.cnblogs.com/weiwenzheng/p/9991739.html