Python函数参数中的*,**
来源:互联网 发布:电视和看电影软件 编辑:程序博客网 时间:2024/05/16 00:55
问题:
Python的函数定义中有两种特殊的情况,即出现*,**的形式。
如:def execute_command(self, *args, **options)等。
解释:
* 用来传递任意个无名字参数,这些参数会一个Tuple的形式访问。
**用来处理传递任意个有名字的参数,这些参数用dict来访问。
应用:
#########################
# “*” 的应用
#########################
>>> def fun1(*keys):
... print "keys type=%s" % type(keys)
... print "keys=%s" % str(keys)
... for i in range(0, len(keys)):
... print "keys[" + str(i) + "]=%s" % str(keys[i])
...
>>> fun1(2,3,4,5)
输出以下结果:
keys type=<type 'tuple'>
keys=(2, 3, 4, 5)
keys[0]=2
keys[1]=3
keys[2]=4
keys[3]=5
#########################
# “**” 的应用
#########################
>>> def fun2(**keys):
... print "keys type=%s" % type(keys)
... print "keys=%s" % str(keys)
... print "name=%s" % str(keys['name'])
...
>>>
>>> fun2(name="vp", age=19)
输出以下结果:
keys type=<type 'dict'>
keys={'age': 19, 'name': 'vp'}
Python的函数定义中有两种特殊的情况,即出现*,**的形式。
如:def execute_command(self, *args, **options)等。
解释:
* 用来传递任意个无名字参数,这些参数会一个Tuple的形式访问。
**用来处理传递任意个有名字的参数,这些参数用dict来访问。
应用:
#########################
# “*” 的应用
#########################
>>> def fun1(*keys):
... print "keys type=%s" % type(keys)
... print "keys=%s" % str(keys)
... for i in range(0, len(keys)):
... print "keys[" + str(i) + "]=%s" % str(keys[i])
...
>>> fun1(2,3,4,5)
输出以下结果:
keys type=<type 'tuple'>
keys=(2, 3, 4, 5)
keys[0]=2
keys[1]=3
keys[2]=4
keys[3]=5
#########################
# “**” 的应用
#########################
>>> def fun2(**keys):
... print "keys type=%s" % type(keys)
... print "keys=%s" % str(keys)
... print "name=%s" % str(keys['name'])
...
>>>
>>> fun2(name="vp", age=19)
输出以下结果:
keys type=<type 'dict'>
keys={'age': 19, 'name': 'vp'}
name=vp
来源:http://harmony.relax.blogbus.com/logs/12303417.html
- Python函数参数中的*,**
- Python函数参数中的*,**
- Python中的函数参数
- python函数中的参数
- Python中的函数参数
- [Python]Python函数参数中的*,**
- Python中的函数中的参数
- python中的函数参数传递
- Python函数中的参数问题
- python中的函数参数详解
- python中的函数可变参数
- Python函数中的参数传递
- python中的 range() 函数参数解释应用
- Python中的函数定义及参数
- Python中print()函数中的一些参数
- Python中的函数之可变参数
- Python中的的函数的参数传递
- python中的函数参数定义和可变参数详解
- 一个UnversalTime与本地时间相互转换的工具
- uC/OS-II系统开发笔记
- 如何获取屏蔽分辨率,状态栏高度,标题栏高度
- 单元测试
- CSS3 基本要素概览
- Python函数参数中的*,**
- 请通过执行“调试”->“Debug.Start Without Debugging”验证 web.config 中没有语法错误
- Scroll2Navigate:在 Windows 上实现“双指轻扫”触摸板翻页的 Chrome 插件
- 文件后缀名的过滤
- 为重装SQL 2005做好准备工作!...
- DataSet、内存处理数据、继承、LINQ、FileInfo类
- string.h头文件中strpbrk,strcspn 等函数原英文全拼
- 【Android】解决sdcard not found 问题
- schedule setting for build periodically in hudson