浅析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 用户登录验证的小例子
Mar 06 Python
Python守护进程和脚本单例运行详解
Jan 06 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
Oct 30 Python
如何在Django中设置定时任务的方法示例
Jan 18 Python
Python Pexpect库的简单使用方法
Jan 29 Python
Python中Numpy ndarray的使用详解
May 24 Python
pandas取出重复数据的方法
Jul 04 Python
python求质数列表的例子
Nov 24 Python
Django后台管理系统的图文使用教学
Jan 20 Python
Python嵌入C/C++进行开发详解
Jun 09 Python
python中关于数据类型的学习笔记
Jul 19 Python
Python的logging模块基本用法
Dec 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实现随机合并数组并排序(原排序)
2015/11/26 PHP
Javascript中的常见排序算法
2007/03/27 Javascript
Jquery实现页面加载时弹出对话框代码
2013/04/19 Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
2013/05/10 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
jQuery动画效果-slideUp slideDown上下滑动示例代码
2013/08/28 Javascript
JavaScript 32位整型无符号操作示例
2013/12/08 Javascript
js利用数组length属性清空和截短数组的小例子
2014/01/15 Javascript
js+html5获取用户地理位置信息并在Google地图上显示的方法
2015/06/05 Javascript
基于jquery实现ajax无刷新评论
2020/08/19 Javascript
Centos7 中 Node.js安装简单方法
2016/11/02 Javascript
微信小程序开发实战教程之手势解锁
2016/11/18 Javascript
js实现图片粘贴上传到服务器并展示的实例
2017/11/08 Javascript
Vue手把手教你撸一个 beforeEnter 钩子函数
2018/04/24 Javascript
用Vue.js在浏览器中实现裁剪图像功能
2019/06/18 Javascript
[01:05:24]Ti4 冒泡赛第二天 iG vs NEWBEE 3
2014/07/15 DOTA
王纯业的Python学习笔记 下载
2007/02/10 Python
Python3指定路径寻找符合匹配模式文件
2015/05/22 Python
python设计模式大全
2016/06/27 Python
Python的mysql数据库的更新如何实现
2017/07/31 Python
获取python的list中含有重复值的index方法
2018/06/27 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
python cv2在验证码识别中应用实例解析
2019/12/25 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
python中wheel的用法整理
2020/06/15 Python
Python实现加密的RAR文件解压的方法(密码已知)
2020/09/11 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
Html5 FileReader实现即时上传图片功能实例代码
2014/09/01 HTML / CSS
美国东北部户外服装和设备零售商:Eastern Mountain Sports
2016/10/05 全球购物
新闻专业推荐信范文
2013/11/20 职场文书
小区门卫工作职责
2013/12/14 职场文书
优秀教师单行材料
2014/12/16 职场文书
金秋助学感谢信
2015/01/21 职场文书
内勤岗位职责范本
2015/04/13 职场文书
学术研讨会主持词
2015/07/04 职场文书