Python基础学习笔记(三)

介绍Python语言的函数用法

一、函数
1、函数的定义
(1)、def(即 define,定义)的含义是创建函数,也就是定义一个函数。
(2)、arg (即 argument,参数)有时你还能见到这种写法:parameter,二者都是参数的意思但是稍有不同,这里不展开说了。
(3)、return 即返回结果,函数可以返回多个值。
图片3.png
(4)、如果没有return语句,函数执行完毕后也会返回结果,只是结果为 None。
return None可以简写为return。
(5)、如果想定义一个什么事也不做的空函数,可以用pass语句:

def nop():
    pass

pass语句什么都不做,pass可以用来作为占位符,比如现在还没想好怎么写函数的代码,就可以先放一个pass,让代码能运行起来。
2、函数的参数与参数传递
(1)、位置参数:填入的每一个值分别对应设定的每一个参数。

ef trapezoid_area(base_up, base_down, height):
     return 1/2 * (base_up + base_down) * height
trapezoid_area(1,2,3)

(2)、关键字参数:在调用函数的时候,将每个参数名称后面赋予一个我们想要传入的值。

trapezoid_area(base_up=1, base_down=2, height=3)

若定义的一个函数参数相对较多,在定义函数的时候可默认定义其中的几个参数,即对它们赋值。
(3)、可变参数:可变参数的名字前面有个 * 号,可以传入0个、1个或多个参数给可变参数,Python解释器会把传入的一组参数组装成一个tuple传递给可变参数。
3、函数的调用
函数在调用时,基本与C语言类似,输入函数名+参数即可完成调用。
4、递归函数
(1)、递归函数的定义
在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。
(2)、递归函数的优点是定义简单,逻辑清晰。理论上,所有的递归函数都可以写成循环的方式,但循环的逻辑不如递归清晰。
(3)、使用递归函数的注意事项
使用递归函数需要注意防止栈溢出。在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值