Python中函数参数调用方式分析

yipeiwu_com6年前Python基础

本文实例讲述了Python中函数参数调用方式。分享给大家供大家参考,具体如下:

Python中函数的参数是很灵活的,下面分四种情况进行说明。

(1) fun(arg1, arg2, ...)

这是最常见的方式,也是和其它语言类似的方式

下面是一个实例:

>>> def fun(x, y):
  return x - y
>>> fun(12, -2)
14

(2) fun(arg1, arg2=value2, ...)

这种就是所谓的带默认参数的函数,调用的时候我们可以指定arg2的值,也可以省略。

下面是带默认参数的函数实例:

>>> def fun(x, y=0):
 return x - y
>>> fun(10)
10
>>> fun(10, -2)
12
>>> fun(10, y=2)
8
>>> fun(x=10, y=2)
8

带默认参数的函数有如上四种调用方式,但是我们调用的时候参数的名称必须和函数定义的时候的参数一致,否则会报错:

>>> fun(a=10, b=2)
Traceback (most recent call last):
 File "<pyshell#13>", line 1, in <module>
  fun(a=10, b=2)
TypeError: fun() got an unexpected keyword argument 'a'

(3) fun(*arg)

即不定长参数,不管实参有多少个,在函数内部都被存放在以形参名为标识符的tuple

下面是一个实例

>>> def fun(*param):
 print(param)
>>> fun(12, 3, 4)
(12, 3, 4)

(4) fun(**arg)

也是不定长参数,参数在函数内部将被存放在以形式名为标识符的dictionary

下面是一个实例

>>> def fun(**param):
 print(param)
>>> fun(sun=0, mon=1, tues=2)
{'sun': 0, 'mon': 1, 'tues': 2}

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

面向对象学习之pygame坦克大战

经过一天多的奋战,查阅文献,参考别人的代码等等,完成了第一个面向对象的小项目,也深深体会到面向对象编程思想在游戏编程中所扮演的角色。 附上代码,参考了别人的代码,以及对他们代码的完善,又...

python创建ArcGIS shape文件的实现

工作中遇到了一个需求,需要把一段json文本转化成ArcGIS shape文件,想来想去,还是考虑用python来实现。 直接上代码 import shapefile import...

python实现多张图片拼接成大图

python实现多张图片拼接成大图

本文实例为大家分享了python实现多张图片拼接成大图的具体代码,供大家参考,具体内容如下 上次爬取了马蜂窝的游记图片,并解决了PIL模块的导入问题,现在直奔主题吧: import...

解决pip install的时候报错timed out的问题

安装包的时候报错,执行:pip install pyinstaller 问题: File "c:\python\python35\lib\site-packages\pip\_ven...

Python装饰器使用实例:验证参数合法性

python是不带静态检查的动态语言,有时候需要在调用函数时保证参数合法。检查参数合法性是一个显著的切面场景,各个函数都可能有这个需求。但另一方面,参数合法性是不是应该由调用方来保证比较...