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

yipeiwu_com7年前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程序设计有所帮助。

相关文章

Python多线程threading模块用法实例分析

Python多线程threading模块用法实例分析

本文实例讲述了Python多线程threading模块用法。分享给大家供大家参考,具体如下: 多线程 - threading python的thread模块是比较底层的模块,python...

深入浅析python继承问题

有如下的代码: class p1: def __init__(self,a,b): print("init in p1") self.a1=a self.b1=b self.f1()...

500行Python代码打造刷脸考勤系统

500行Python代码打造刷脸考勤系统

需求分析 “员工刷脸考勤”系统,采用Python语言开发,可以通过摄像头添加员工面部信息,这里就涉及到两个具体的个问题,一个是应该以什么样的数据来标识每一个员工的面部信息,二是持久化地保...

numpy中实现ndarray数组返回符合特定条件的索引方法

numpy中实现ndarray数组返回符合特定条件的索引方法

在numpy的ndarray类型中,似乎没有直接返回特定索引的方法,我只找到了where函数,但是where函数对于寻找某个特定值对应的索引很有用,对于返回一定区间内值的索引不是很有效,...

python使用MQTT给硬件传输图片的实现方法

python使用MQTT给硬件传输图片的实现方法

最近因需要用python写一个微服务来用MQTT给硬件传输图片,其中python用的是flask框架,大概流程如下: 协议为: 需要将图片数据封装成多个消息进行传输,每个消息传输的数...