廖雪峰老师的官方网站(跟着廖雪峰学python 005)
函数的调用、定义、参数
编辑
#######命名关键字参数没完
abs()函数:绝对值
max()函数:接收任意多个参数,并返回最大的那个
数据类型转换函数:
int():整数
float():浮点型
str():字符型
bool():布尔型
定义函数
执行到return时,函数就执行完毕,并将结果返回
如果已经把my_abs()的函数定义保存为abstest.py文件了,那么,可以用from abstest import my_abs来导入my_abs()函数,注意abstest是文件名(不含.py扩展名):
空函数
如果想定义一个什么也不做的空函数,可以用pass语句:
pass 用来作为占位符,比如没想好写什么函数代码,可以先放个pass让整体代码正常运行
pass也可以用在其他语句
这句缺少pass,代码就会有语法错误
返回多个值
比如在游戏中经常需要从一个点移动到另一个点,给出坐标、位移和角度,就可以计算出新的坐标:
python多值返回就是返回一个tuple
编辑
函数参数
位置参数
计算<span class="cke_reset cke_widget_drag_handler_container"><img src="https://img2023.cnblogs.com/blog/1975815/202302/1975815-20230219151815511-72735130.gif" class="cke_reset cke_widget_drag_handler" title="点击并拖拽以移动" data-cke-widget-drag-handler="1" data-mce-src="https://img2023.cnblogs.com/blog/1975815/202302/1975815-20230219151815511-72735130.gif"><span class="cke_image_resizer" title="点击并拖拽以改变尺寸"><span class="cke_widget_edit_container" title="编辑图片">编辑的函数:
计算<span class="cke_reset cke_widget_drag_handler_container"><img src="https://img2023.cnblogs.com/blog/1975815/202302/1975815-20230219151815511-72735130.gif" class="cke_reset cke_widget_drag_handler" title="点击并拖拽以移动" data-cke-widget-drag-handler="1" data-mce-src="https://img2023.cnblogs.com/blog/1975815/202302/1975815-20230219151815511-72735130.gif"><span class="cke_image_resizer" title="点击并拖拽以改变尺寸"><span class="cke_widget_edit_container" title="编辑图片">编辑的函数:
x和n都是位置参数,调用函数时,传入的两个值按照位置顺序依次赋给参数x和n
把第二个参数n的默认值设定为2:
此时,power(5)和power(5,2)等价
若n>2,就必须明确地传入n,比如power(5,3)
注意:
必选参数在前,默认参数在后,否则Python的解释器会报错(容易产生歧义)
当函数有多个参数时,把变化大的参数放在前面,默认参数放在后面(降低调用函数的难度)
如:
大多数学生注册时不需要提供年龄和城市,只提供必须地两个参数即可
编辑
可变参数
传入的参数个数是可以变的
如:给一组数字,计算平方和(作为一个list或tuple传进来)
若函数参数为可变参数:
定义可变参数和定义一个list或tuple参数相比,只是在参数前面加一个 *号,参数numbers接收到的是一个tuple。调用该函数时,可以传入任意个参数,包括0个参数
关键参数:
关键字参数允许你传入0个或任意个含参数名的参数:
也可以传入任意个数的关键字参数:
关键参数可以扩展函数功能。比如,person函数name和age两个参数是必选项,但如果提供更多的参数就需要利用关键字参数
可以把字典转换为关键字参数传进去:
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!