浅析python参数的知识点


Posted in Python onDecember 10, 2018

python之参数,定义时小括号中的参数,用来接收参数用的,称为 “形参”

调用时小括号中的参数,用来传递给函数用的,称为 “实参”。

1、思考一个问题,如下:

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

In [8]: def num():

 ...:  a=12 

 ...:  b=23

 ...:  c=a+b

 ...:  print(c)

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

浅析python参数的知识点

2、定义带有参数的函数

In [10]: def num1(a):

 ....:  print(a)

 ....:  In [11]: def num2(a,b):

 ....:  c=a+b

 ....:  print(c)

 ....:  In [12]: def num3(a,b,c):

 ....:  d=a+b+c

 ....:  print(d)

浅析python参数的知识点

3、调用带有参数的函数

In [13]: def num2(a,b):

 ....:  c=a+b

 ....:  print(c)

 ....:  

In [14]: 

In [14]: num2(1,2)

3

浅析python参数的知识点

4、缺省参数

调用函数时,缺省参数的值如果没有传入,则被认为是默认值。

In [18]: def info(name,age=20):

 ....:  print("name:",name)

 ....:  print("age:",age)

 ....:  In [19]: info(name='zcf')

name: zcf

age: 20

In [20]: info(age=21,name='zcf')

name: zcf

age: 21

浅析python参数的知识点

5、缺省参数之注意:

带有默认值的参数一定要位于参数列表的最后面。

In [21]: def info(name,age=20,sex):

 ....:  print(name)

 ....:  

 File "<ipython-input-21-099520322ee2>", line 1

 def info(name,age=20,sex):

   ^

SyntaxError: non-default argument follows default argument

浅析python参数的知识点

6、不定长参数

有时可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,声明时不会命名。

语法:

def functionname([formal_args,] *args,**kwargs):

  function_suite

  return [expression]

加入星号(*)的变量args会存放所有未命名的变量参数,args为元组;

而加**的变量kwargs 会存放命名参数,即形如key=value的参数,kwargs为字典

浅析python参数的知识点

浅析python参数的知识点

浅析python参数的知识点

7、

引用传参可变类型与不可变类型的变量分别作为函数参数时,会有什么不同吗?Python有没有类似C语言中的指针传参呢?Python中函数参数是引用传递(注意不是值传递)。对于不可变类型,因变量不能修改,所以运算不会影响到变量自身;而对于可变类型来说,函数体中的运算有可能会更改传入的参数变量。
引用传参可变类型与不可变类型的变量分别作为函数参数时,会有什么不同吗?Python有没有类似C语言中的指针传参呢?

以上内容就是关于python参数相关的知识点内容,感谢大家对三水点靠木的支持。

Python 相关文章推荐
Python通过解析网页实现看报程序的方法
Aug 04 Python
Python中使用Flask、MongoDB搭建简易图片服务器
Feb 04 Python
Python中用于去除空格的三个函数的使用小结
Apr 07 Python
Python处理JSON时的值报错及编码报错的两则解决实录
Jun 26 Python
深入浅出分析Python装饰器用法
Jul 28 Python
对Python中数组的几种使用方法总结
Jun 28 Python
详解配置Django的Celery异步之路踩坑
Nov 25 Python
Python面向对象程序设计之继承、多态原理与用法详解
Mar 23 Python
Python语法垃圾回收机制原理解析
Mar 25 Python
浅析Python 序列化与反序列化
Aug 05 Python
Python用户自定义异常的实现
Dec 25 Python
python 标准库原理与用法详解之os.path篇
Oct 24 Python
Flask框架web开发之零基础入门
Dec 10 #Python
Ubuntu下升级 python3.7.1流程备忘(推荐)
Dec 10 #Python
Python操作Excel插入删除行的方法
Dec 10 #Python
Python openpyxl 遍历所有sheet 查找特定字符串的方法
Dec 10 #Python
使用pandas实现csv/excel sheet互相转换的方法
Dec 10 #Python
python得到一个excel的全部sheet标签值方法
Dec 10 #Python
解决pandas .to_excel不覆盖已有sheet的问题
Dec 10 #Python
You might like
php使用explode()函数将字符串拆分成数组的方法
2015/02/17 PHP
PHP curl伪造IP地址和header信息代码实例
2015/04/27 PHP
thinkPHP显示不出验证码的原因与解决方法分析
2017/05/20 PHP
用PHP的反射实现委托模式的讲解
2019/03/22 PHP
javascript中的对象和数组的应用技巧
2007/01/07 Javascript
JavaScript 动态创建VML的方法
2009/10/14 Javascript
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
jquery实现个人中心导航菜单效果和美观都非常不错
2014/09/02 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
RequireJS使用注意细节
2016/05/15 Javascript
javascript css红色经典选项卡效果实现代码
2016/05/17 Javascript
jQuery+CSS3实现四种应用广泛的导航条制作实例详解
2016/09/17 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
2017/06/13 Javascript
JavaScript算法教程之sku(库存量单位)详解
2017/06/29 Javascript
angular 实现同步验证器跨字段验证的方法
2019/04/11 Javascript
layui动态渲染生成左侧3级菜单的方法(根据后台返回数据)
2019/09/23 Javascript
JavaScript实现模态对话框实例
2020/01/13 Javascript
小谈angular ng deploy的实现
2020/04/07 Javascript
vue中实现弹出层动画效果的示例代码
2020/09/25 Javascript
[01:02]2014 DOTA2国际邀请赛中国区预选赛 现场抢先看
2014/05/22 DOTA
python开发的小球完全弹性碰撞游戏代码
2013/10/15 Python
Python 通过pip安装Django详细介绍
2017/04/28 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
解决python给列表里添加字典时被最后一个覆盖的问题
2019/01/21 Python
详解pandas删除缺失数据(pd.dropna()方法)
2019/06/25 Python
python3中pip3安装出错,找不到SSL的解决方式
2019/12/12 Python
纯CSS3代码实现文字描边
2016/04/25 HTML / CSS
html5小技巧之通过document.head获取head元素
2014/06/04 HTML / CSS
Html5页面获取微信公众号的openid的方法
2020/05/12 HTML / CSS
ToysRus日本官网:玩具反斗城
2018/09/08 全球购物
Belvilla法国:休闲度假房屋出租
2020/10/03 全球购物
extern在函数声明中是什么意思
2014/01/19 面试题
2015年暑期实践报告范文
2015/07/13 职场文书
2016年小学端午节活动总结
2016/04/01 职场文书
Django使用channels + websocket打造在线聊天室
2021/05/20 Python