文档章节

Python中*args 和**kwargs的用法

突然帅了
 突然帅了
发布于 2015/04/25 17:26
字数 155
阅读 8
收藏 0

当函数的参数不确定时,可以使用*args 和**kwargs,*args 没有key值,**kwargs有key值。

还是直接来代码吧,废话少说

*args

def fun_var_args(farg, *args):  
    print "arg:", farg  
    for value in args:  
        print "another arg:", value  
  
fun_var_args(1, "two", 3) # *args可以当作可容纳多个变量组成的list

result:

arg: 1  
another arg: two  
another arg: 3

**kwargs:

def fun_var_kwargs(farg, **kwargs):  
    print "arg:", farg  
    for key in kwargs:  
        print "another keyword arg: %s: %s" % (key, kwargs[key])  

fun_var_kwargs(farg=1, myarg2="two", myarg3=3) # myarg2和myarg3被视为key, 感觉**kwargs可以当作容纳多个key和value的dictionary

result:

arg: 1  
another keyword arg: myarg2: two  
another keyword arg: myarg3: 3


本文转载自:http://blog.csdn.net/chenjinyu_tang/article/details/8136841

共有 人打赏支持
突然帅了
粉丝 8
博文 90
码字总数 28698
作品 0
西安
Python tips: 什么是*args和**kwargs?

先来看个例子: def foo(args, *kwargs): 输出结果如下: args = (1, 2, 3, 4) kwargs = {} --------------------------------------- args = () kwargs = {'a': 1, 'c': 3, 'b': 2} ------......

charlesdong1989
2012/04/09
0
0
python中的*args和**kwargs

并非本人原创!!! 先来看个例子: 输出结果如下: ![在此输入图片描述][1] 可以看到,这两个是python中的可变参数。args表示任何多个无名参数,它是一个tuple;kwargs表示关键字参数,它是...

恶魔在江湖
2013/06/08
0
0
python中的魔法参数:*args和**kwargs

def foo(args, *kwargs):print 'args = ', argsprint 'kwargs = ', kwargsprint '---------------------------------------'if name == 'main':foo(1,2,3,4)foo(a=1,b=2,c=3)foo(1,2,3,4, a=......

岭南六少
2011/08/06
0
0
转-Python参数知识[变量前加星号的意义]

From:http://blog.sina.com.cn/s/blog4bfd07180100g34k.html 1.过量的参数 在运行时知道一个函数有什么参数,通常是不可能的。另一个情况是一个函数能操作很多对象。更有甚者,调用自身的函数...

玉龙
2012/03/03
0
0
Python中的*self,*self._args, **kwargs

在python中,有些常见方法参数是:self._args, kwargs,如:self._target(self.args, **self.kwargs)。经过查找一些资料,可以归纳为以下两种类型: *self._args 表示接受元组类参数; **kw...

qq_39521554
04/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

002,zabbix-agent的安装 监控Linux主机

2.1.安装zabbix-agent $ rpm -i http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm$ yum install -y zabbix-agent zabbix-get 2.2.配置zabbix-agent ......

happyeveryday32
36分钟前
2
0
docker learn :swarm

swarm是什么 swarm是一组运行docker服务的集群,之后,还是使用那些命令去操作docker,但是是通过swarm manager来执行的。 swarm中的机器可以是实体的也可以是虚拟的,加入swarm后,他们被当作...

writeademo
36分钟前
1
0
Golang + vscode 开发环境配置

GOPATH 环境变量的配置 https://my.oschina.net/xinxingegeya/blog/718305 安装vscode go 扩展 下载vscode ,安装go的扩展https://github.com/Microsoft/vscode-go 该扩展对 Golang 支持非常......

秋风醉了
39分钟前
0
0
idea jar包

我自己用idea新建一个springboot项目,打包一直有问题,百度了下,又总结了下。 方式一: 找到Project Structure菜单,然后点开,照下图点击 然后出现下图所示 红框1:为你项目的main函数所在...

朝如青丝暮成雪
40分钟前
0
0
Vue scoped CSS 与深度作用选择器 /deep/

使用 scoped 后,父组件的样式将不会渗透到子组件中。 例如(无效): <template> <div id="app"> <el-input class="text-box" v-model="text"></el-input> </div></template><......

不负好时光
40分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部