浅析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 相关文章推荐
将图片文件嵌入到wxpython代码中的实现方法
Aug 11 Python
python with statement 进行文件操作指南
Aug 22 Python
Python保存MongoDB上的文件到本地的方法
Mar 16 Python
Python编程之变量赋值操作实例分析
Jul 24 Python
在Python的一段程序中如何使用多次事件循环详解
Sep 07 Python
解决python2 绘图title,xlabel,ylabel出现中文乱码的问题
Jan 29 Python
使用python实现男神女神颜值打分系统(推荐)
Oct 31 Python
python创建n行m列数组示例
Dec 02 Python
解决python-docx打包之后找不到default.docx的问题
Feb 13 Python
Python 自由定制表格的实现示例
Mar 20 Python
python 如何利用argparse解析命令行参数
Sep 11 Python
用Python将GIF动图分解成多张静态图片
Jun 11 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将向Java靠拢
2006/10/09 PHP
php文章内容分页并生成相应的htm静态页面代码
2010/06/07 PHP
php冒泡排序、快速排序、快速查找、二维数组去重实例分享
2014/04/24 PHP
PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
2015/12/24 PHP
php基于openssl的rsa加密解密示例
2016/07/11 PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
2017/03/16 PHP
thinkPHP5.0框架开发规范简介
2017/03/25 PHP
yii2 开发api接口时优雅的处理全局异常的方法
2019/05/14 PHP
怎样在JavaScript里写一个swing把数据插入数据库
2012/12/10 Javascript
ie8 不支持new Date(2012-11-10)问题的解决方法
2013/07/31 Javascript
javascript中加号(+)操作符的一些神奇作用
2014/06/06 Javascript
用C/C++来实现 Node.js 的模块(一)
2014/09/24 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
jQuery插件之jQuery.Form.js用法实例分析(附demo示例源码)
2016/01/04 Javascript
jQuery中的ready函数与window.onload谁先执行
2016/06/21 Javascript
js实现可输入可选择的select下拉框
2016/12/21 Javascript
Bootstrap table简单使用总结
2017/02/15 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
2017/03/03 Javascript
jquery mobile实现可折叠的导航按钮
2017/03/11 Javascript
详解小程序缓存插件(mrc)
2018/08/17 Javascript
Vue.js 中的 v-show 指令及用法详解
2018/11/19 Javascript
[00:09]DOTA2新版本PA至宝特效动作展示
2014/11/19 DOTA
Python3搜索及替换文件中文本的方法
2015/05/22 Python
简单了解django缓存方式及配置
2019/07/19 Python
python向图片里添加文字
2019/11/26 Python
python3通过qq邮箱发送邮件以及附件
2020/05/20 Python
matplotlib制作雷达图报错ValueError的实现
2021/01/05 Python
AmazeUI的JS表单验证框架实战示例分享
2020/08/21 HTML / CSS
Linux Interview Questions For software testers
2013/05/17 面试题
服装厂厂长职责
2013/12/16 职场文书
幼儿园社区活动总结
2014/07/07 职场文书
2014年国庆节演讲稿精选范文1500字
2014/09/25 职场文书
诉讼授权委托书
2014/10/15 职场文书
酒店销售经理岗位职责
2015/04/02 职场文书
通知函格式范文
2015/04/27 职场文书
python数据可视化使用pyfinance分析证券收益示例详解
2021/11/20 Python