Python中函数定义的关键参数问题

2014-11-24 11:52:52 · 作者: · 浏览: 2

近来,看了看Python这种强大的脚本语言,细细的试了试,感觉还是蛮好用的,怪不得大家都用来进行科学计算什么的,虽然是C语言实现的,但是和C语言还是存在蛮多的差别的。


函数是各种语言中一般都会包含的,Python的函数声明和定义是在一起的,其中和C++有一定的相似性就是支持默认参数等特性。


函数定义的基本形式如下:


基本的形式中包含函数名和参数,以及doc字符串,最后就是实现部分。

一般的语言都需要按照自己定义的顺序赋值实现参数的传递,但是在Python中支持调用时的关键参数,所谓的关键参数就是在调用的时候,对参数名进行无序的赋值,这时候解释器会自动完成参数的对应操作。


本来调用的过程应该是myFunc('abc',10,'cdf'),采用关键参数的方式进行调用则可以按如下的形式进行:


myFunc(args2=10,args3='cdf',args1='abc')。


从上面的定义可知,调用的过程是一个无序的过程,这个无序就是通过关键参数的形式实现的。这时候解释器会根据args1,args2,args3的值自动调整参数。


对于不定参量的函数实现过程中如何实现关键变量呢?


首先我们已知元组和字典的函数定义形式如下: