Python函数基础(一):函数参数、关键字可变参数、复合参数

  • Python函数:一系列Python语句的组合,可以在程序中运行一次或者多次。一般是完成具体的独立的功能。
  • 基本上所有的高级语言都支持函数,Python也不例外。Python不但能非常灵活地定义函数,而且本身内置了很多有用的函数,可以直接调用。
  • 函数就是最基本的一种代码抽象的方式。
  • 提问:我们只是反复多次调用封装好的print、len函数,而不清楚它具体内部如何操作?

函数学习重点

  • 1.函数基础
    2.函数参数
    3.函数返回值
    4.函数嵌套调用

函数参数、函数返回值重点

  • 函数参数:1.传参;2.调用;3.不定长参数和缺省参数
  • 函数返回值:return

函数基础

  • 概念:在编写程序的过程中,有某一功能代码块出现多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数。

函数定义

  • 解决代码重复问题
  • 为什么要使用函数?
  • 代码的的复用最大化以及最小化冗余代码,整体代码结构清晰,问题局部化。
  • def+关键字+小括号+冒号+换行缩进+代码块定义一个函数
  • def 函数名():
    代码块

函数调用

  • 函数名加()即可调用该函数
  • 函数说明文档:函数内容的第一行可以用字符串进行函数说明

优化print多次输出相同的信息的方法

  • 针对上面的场景,就需要进一步的去优化代码【方案:封装信息】

在这里插入图片描述
在这里插入图片描述

添加备注信息

  • 三个单引号自动生成备注信息
  • 光标放到函数上面可以自动提示备注信息
    在这里插入图片描述

函数参数

  • 定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了。对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了。
  • Python的函数定义非常简单,但灵活度却非常大。除了正常定义的必 选参数外,还可以使用默认参数、可变参数和关键字参数,使得函数定义出来的接口,不但能处理复杂的参数,还可以简化调用者的代码。
  • 缺省参数
    缺省参数,在调用函数时如果没有传参数,那么会使用定义函数时给的缺省值,缺省参数必须在参数列表的最后面,否则会报错。
  • 引用传参
    Python中函数参数是引用传递(注意不是值传递)。对于不可变类型,因变量不能修改,所以运算不会影响到变量自身;而对于可变类型来说,函数体中的运算有可能会更改传入的参数变量。

输出不同人的信息

  • 方案:通过传入参数来解决
    在这里插入图片描述
    在这里插入图片描述

必选参数

在这里插入图片描述
在这里插入图片描述

缺省参数

在这里插入图片描述

  • 缺省参数必须在参数列表的最后面,否则会报错
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

可选参数(不定长参数)

  • 当参数的个数不确定时使用,比较灵活
  • 首先定义一个函数
    在这里插入图片描述
  • 做累加和
  • args表示可变长参数,*代表数据长度不确定
    在这里插入图片描述
    在这里插入图片描述

关键字参数

  • **来定义
  • 在函数体内,参数关键字是一个字典类型,key是一个字符串
  • 不能直接传字典对象,要加**
    在这里插入图片描述
  • 以命名方式的方法给它传
    在这里插入图片描述
  • 不传参数时,即为空字典
    在这里插入图片描述

复合参数

  • 以元组形式,放到第一个参数当中
    在这里插入图片描述

  • 后一个数据以字典形式传到第二个参数当中(键值形式)
    在这里插入图片描述

  • 第一个参数无,自动填充
    在这里插入图片描述

  • 可选参数必须放到关键字可选参数之前
    在这里插入图片描述

  • 可选参数:接受的数据是一个元组类型

  • 关键字参数:接受的数据是一个字典类型

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值