详解函数的参数和返回值 | 手把手教你入门Python之四十

简介: 本节重点介绍函数参数

上一篇:详解函数介绍,定义和调⽤ | 手把手教你入门Python之三十九
下一篇:函数的⽂档说明 | 手把手教你入门Python之四十一

本文来自于千锋教育在阿里云开发者社区学习中心上线课程《Python入门2020最新大课》,主讲人姜伟。

函数参数

思考⼀个问题,如下:

现在需要定义⼀个函数,这个函数能够完成2个数的加法运算,并且把结果打印出来,该怎样设计?下
⾯的代码可以吗?有什么缺陷吗?

def add2num():
 a = 11
 b = 22
 c = a+b
 print(c)

为了让⼀个函数更通⽤,即想让它计算哪两个数的和,就让它计算哪两个数的和,在定义函数的时候可以让函数接收数据,就解决了这个问题,这就是 函数的参数

⼀、定义、调⽤带有参数的函数

定义⼀个add2num(a, b)函数,来计算任意两个数字之和:

def add2num(a, b):
 c = a+b
 print c
add2num(11, 22) # 调⽤带有参数的函数时,需要在⼩括号中,传递数据

注意点:

  • 在定义函数的时候,⼩括号⾥写等待赋值的变量名
  • 在调⽤函数的时候,⼩括号⾥写真正要进⾏运算的数据

调⽤带有参数函数的运⾏过程:
image.png

练一练

要求:定义⼀个函数,完成前2个数完成加法运算,然后对第3个数,进⾏减法;然后调⽤这个函数

  • 使⽤def定义函数,要注意有3个参数
  • 调⽤的时候,这个函数定义时有⼏个参数,那么就需要传递⼏个参数

三、调⽤函数时参数的顺序

>>> def test(a,b):
... print(a,b)
...
>>> test(1,2) # 位置参数
1 2
>>> test(b=1,a=2) # 关键字参数
2 1
>>>
>>> test(b=1,2) # 关键字参数写在位置参数之前会导致出错
 File "<stdin>", line 1
SyntaxError: positional argument follows keyword argument

四、小总结

  • 定义时⼩括号中的参数,⽤来接收参数⽤的,称为 “形参”
  • 调⽤时⼩括号中的参数,⽤来传递给函数⽤的,称为 “实参”

image.png
image.png

函数返回值

⼀、“返回值”介绍

现实⽣活中的场景:
我给⼉⼦10块钱,让他给我买个冰淇淋。这个例⼦中,10块钱是我给⼉⼦的,就相当于调⽤函数时传
递到参数,让⼉⼦买冰淇淋这个事情最终的⽬标,我需要让他把冰淇淋带回来,此时冰淇淋就是返回值

开发中的场景:

定义了⼀个函数,完成了获取室内温度,想⼀想是不是应该把这个结果给调⽤者,只有调⽤者拥有了这
个返回值,才能够根据当前的温度做适当的调整

综上所述:

  • 所谓“返回值”,就是程序中函数完成⼀件事情后,最后给调⽤者的结果
  • 使⽤返回值的前提需求就是函数调⽤者想要在函数外使⽤计算结果

⼆、带有返回值的函数

想要在函数中把结果返回给调⽤者,需要在函数中使⽤return

如下示例:

def add2num(a, b):
 c = a+b
 return c # return 后可以写变量名

或者

def add2num(a, b):
 return a+b # return 后可以写计算表达式

三、保存函数的返回值

在本⼩节刚开始的时候,说过的“买冰淇淋”的例⼦中,最后⼉⼦给你冰淇淋时,你⼀定是从⼉⼦⼿中接过来对么,程序也是如此,如果⼀个函数返回了⼀个数据,那么想要⽤这个数据,那么就需要保存

保存函数的返回值示例如下:

#定义函数
def add2num(a, b):
 return a+b
#调⽤函数,顺便保存函数的返回值
result = add2num(100,98)
#因为result已经保存了add2num的返回值,所以接下来就可以使⽤了
print(result)

结果:

198

image.png
image.png

相关文章
|
6月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
781 7
|
6月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
412 1
|
6月前
|
算法 Java Docker
(Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
IF 条件判断 使用if语句,对条件进行判断 true则执行代码块缩进语句 false则不执行代码块缩进语句,如果有else 或 elif 则进入相应的规则中执行
1071 1
|
6月前
|
Java 数据处理 索引
(numpy)Python做数据处理必备框架!(二):ndarray切片的使用与运算;常见的ndarray函数:平方根、正余弦、自然对数、指数、幂等运算;统计函数:方差、均值、极差;比较函数...
ndarray切片 索引从0开始 索引/切片类型 描述/用法 基本索引 通过整数索引直接访问元素。 行/列切片 使用冒号:切片语法选择行或列的子集 连续切片 从起始索引到结束索引按步长切片 使用slice函数 通过slice(start,stop,strp)定义切片规则 布尔索引 通过布尔条件筛选满足条件的元素。支持逻辑运算符 &、|。
338 0
|
7月前
|
设计模式 缓存 监控
Python装饰器:优雅增强函数功能
Python装饰器:优雅增强函数功能
350 101
|
6月前
|
Cloud Native 算法 API
Python API接口实战指南:从入门到精通
🌟蒋星熠Jaxonic,技术宇宙的星际旅人。深耕API开发,以Python为舟,探索RESTful、GraphQL等接口奥秘。擅长requests、aiohttp实战,专注性能优化与架构设计,用代码连接万物,谱写极客诗篇。
1313 1
Python API接口实战指南:从入门到精通
|
6月前
|
存储 Java 调度
Python定时任务实战:APScheduler从入门到精通
APScheduler是Python强大的定时任务框架,通过触发器、执行器、任务存储和调度器四大组件,灵活实现各类周期性任务。支持内存、数据库、Redis等持久化存储,适用于Web集成、数据抓取、邮件发送等场景,解决传统sleep循环的诸多缺陷,助力构建稳定可靠的自动化系统。(238字)
1142 1
|
人工智能 Java Python
python入门(二)安装第三方包
python入门(二)安装第三方包
223 1
|
Java Python 开发者
Python 学习之路 01基础入门---【Python安装,Python程序基本组成】
线程池详解与异步任务编排使用案例-xian-cheng-chi-xiang-jie-yu-yi-bu-ren-wu-bian-pai-shi-yong-an-li
622 3
Python 学习之路 01基础入门---【Python安装,Python程序基本组成】
|
机器学习/深度学习 Python
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda
本篇将详细介绍如何在Mac系统上安装和配置Anaconda,如何创建虚拟环境,并学习如何使用 `pip` 和 `conda` 管理Python包,直到成功运行第一个Python程序。通过本篇,您将学会如何高效地使用Anaconda创建和管理虚拟环境,并使用Python开发。
545 4
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda

推荐镜像

更多
下一篇
开通oss服务