Python学习之路——函数参数传递的方式

简介: 开发者学堂课程,了解Python语言的基本特性、编程环境的搭建、语法基础、算法基础等,了解Python的基本数据结构,对Python的网络编程与Web开发技术具备初步的知识,了解常用开发框架的基本特性,以及Python爬虫的基础知识。课程地址:https://developer.aliyun.com/learning/course/601/detail/8724

定义一个函数,定义行参时,可以为行参指定默认值

指定了默认值以后,如果用户传递了参数则默认值没有任何作用,如果用户没有传递参数,则默认值就会生效

deffn(a=5,b=3,c=29):
print('a=',a)
print('b=',b)
print('c=',c)
print('*'*65)
#调用fn函数fn(1,2,3)
fn(1,2)
fn()

得到的结果是:

image.png

一、位置参数

位置参数,将对应位置的实参赋值给对应位置的形参。

第一个实参赋值给第一个形参,第二个实参赋值给第二个形参,以此类推。

fn(1 , 2 , 3 )

1赋值给 a

2赋值给 b

3赋值给 c

一一对应

位置参数是使用最多的传递方式,但是有一个缺陷,当某个参数具有某个意义,比如a 代表...b 代表...c 代表...在调用函数传递参数的时候,需要明确各自的意义。

在使用位置参数时,需要记住形参的位置。

二、关键字参数

关键字参数,可以不按照形参定义的顺序去传递,而直接根据参数名去传递参数。

关键字参数的优点为,不需要记忆参数的顺序,只需要记忆参数的名称.

deffn(a=5,b=3,c=29):
print('a=',a)
print('b=',b)
print('c=',c)
print('*'*65)
#调用fn函数fn(b=1,a=2,c=3)

image.png

位置参数和关键字参数可以混合使用

deffn(a=5,b=3,c=29):
print('a=',a)
print('b=',b)
print('c=',c)
print('*'*65)
#调用fn函数fn(1,c=2)

image.png

混合使用关键字参数和位置参数时,必须将位置参数输入在前面,后面输入关键字参数。

假如输入 fn(1,a=30)这种情况,也会报错。

因为赋予了 a 两个值,指定了位置参数后,就不要指定关键字参数。

fn(1  位置已经给到 a,后面就不能再输入  a,换成 c 后,保存即可。

这就是参数传递的两种方式,位置参数和关键字参数。

相关文章
|
25天前
|
机器学习/深度学习 Python
堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能
本文深入探讨了堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能。文章详细介绍了堆叠的实现步骤,包括数据准备、基础模型训练、新训练集构建及元学习器训练,并讨论了其优缺点。
43 3
|
1月前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
33 4
|
5天前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
23天前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
125 67
|
8天前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。
|
12天前
|
存储 程序员 Python
Python学习的自我理解和想法(2)
今日学习Python第二天,重点掌握字符串操作。内容涵盖字符串介绍、切片、长度统计、子串计数、大小写转换及查找位置等。通过B站黑马程序员课程跟随老师实践,非原创代码,旨在巩固基础知识与技能。
|
16天前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
42 18
|
8天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
39 8
|
11天前
|
程序员 Python
Python学习的自我理解和想法(3)
这是学习Python第三天的内容总结,主要围绕字符串操作展开,包括字符串的提取、分割、合并、替换、判断、编码及格式化输出等,通过B站黑马程序员课程跟随老师实践,非原创代码。
|
8天前
|
Python
Python学习的自我理解和想法(7)
学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第七天,学的内容是集合。开学了,时间不多,写得不多,见谅。
下一篇
DataWorks