python函数参数*args**kwargs用法实例


Posted in Python onDecember 04, 2013
#coding=utf8
__author__ = 'Administrator'
# 当函数的参数不确定时,可以使用*args和**kwargs。*args没有key值,**kwargs有key值
def fun_var_args(farg, *args):
    print 'args:', farg
    for value in args:
        print 'another arg:',value
# *args可以当作可容纳多个变量组成的list或tuple
fun_var_args(1, 'two', 3, None)
#args: 1
#another arg: two
#another arg: 3
#another arg: None

def fun_var_kwargs(farg, **kwargs):
    print 'args:',farg
    for key in kwargs:
        print 'another keyword arg:%s:%s' % (key, kwargs[key])
# myarg1,myarg2和myarg3被视为key, 感觉**kwargs可以当作容纳多个key和value的dictionary
fun_var_kwargs(1, myarg1='two', myarg2=3, myarg3=None)
# 输出:
#args: 1
#another keyword arg:myarg1:two
#another keyword arg:myarg2:3
#another keyword arg:myarg3:None
def fun_args(arg1, arg2, arg3):
    print 'arg1:', arg1
    print 'arg2:', arg2
    print 'arg3:', arg3
myargs = ['1', 'two', None]     # 定义列表
fun_args(*myargs)
# 输出:
#arg1: 1
#arg2: two
#arg3: None
mykwargs = {'arg1': '1', 'arg2': 'two', 'arg3': None}      # 定义字典类型
fun_args(**mykwargs)
# 输出:
#arg1: 1
#arg2: two
#arg3: None
# 两者都有
def fun_args_kwargs(*args, **kwargs):
    print 'args:', args
    print 'kwargs:', kwargs

args = [1, 2, 3, 4]
kwargs = {'name': 'BeginMan', 'age': 22}
fun_args_kwargs(args,kwargs)
# args: ([1, 2, 3, 4], {'age': 22, 'name': 'BeginMan'})
# kwargs: {}
fun_args_kwargs(1,2,3,a=100)
#args: (1, 2, 3)
#kwargs: {'a': 100}
fun_args_kwargs(*(1,2,3,4),**{'a':None})
#args: (1, 2, 3, 4)
#kwargs: {'a': None}
 

 

Python 相关文章推荐
python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
Dec 08 Python
python中while循环语句用法简单实例
May 07 Python
Python实现对excel文件列表值进行统计的方法
Jul 25 Python
python将字典内容存入mysql实例代码
Jan 18 Python
python读取图片并修改格式与大小的方法
Jul 24 Python
pandas 条件搜索返回列表的方法
Oct 30 Python
python 实现GUI(图形用户界面)编程详解
Jul 17 Python
pycharm运行scrapy过程图解
Nov 22 Python
超全Python图像处理讲解(多模块实现)
Apr 13 Python
Python如何实现邮件功能
May 27 Python
python ETL工具 pyetl
Jun 07 Python
Python多线程实用方法以及共享变量资源竞争问题
Apr 12 Python
Mac OS X10.9安装的Python2.7升级Python3.3步骤详解
Dec 04 #Python
Python Web框架Pylons中使用MongoDB的例子
Dec 03 #Python
python将xml xsl文件生成html文件存储示例讲解
Dec 03 #Python
python使用reportlab画图示例(含中文汉字)
Dec 03 #Python
python33 urllib2使用方法细节讲解
Dec 03 #Python
python使用mysqldb连接数据库操作方法示例详解
Dec 03 #Python
二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)
Dec 03 #Python
You might like
php缓冲 output_buffering的使用详解
2013/06/13 PHP
PHP strip_tags保留多个HTML标签的方法
2016/05/22 PHP
短信提示使用 特效
2007/01/19 Javascript
基于JQuery实现异步刷新的代码(转载)
2011/03/29 Javascript
基于jquery的一个拖拽到指定区域内的效果
2011/09/21 Javascript
基于jquery的防止大图片撑破页面的实现代码(立即缩放)
2011/10/24 Javascript
Javascript的各种节点操作实例演示代码
2012/06/27 Javascript
javaScript arguments 对象使用介绍
2013/10/18 Javascript
简洁Ajax函数处理(示例代码)
2013/11/15 Javascript
js传中文参数controller里获取参数乱码问题解决方法
2014/01/03 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
2016/06/07 Javascript
javascript操作cookie
2017/01/17 Javascript
javascript基于定时器实现进度条功能实例
2017/10/13 Javascript
Vue对象赋值视图不更新问题及解决方法
2019/06/03 Javascript
解决layui动态加载复选框无法选中的问题
2019/09/20 Javascript
node.js使用zlib模块进行数据压缩和解压操作示例
2020/02/12 Javascript
Python遍历目录的4种方法实例介绍
2015/04/13 Python
Python发送以整个文件夹的内容为附件的邮件的教程
2015/05/06 Python
发布你的Python模块详解
2016/09/15 Python
Python实现发送QQ邮件的封装
2017/07/14 Python
解决python "No module named pip" 的问题
2018/10/13 Python
np.random.seed() 的使用详解
2020/01/14 Python
Python yield的用法实例分析
2020/03/06 Python
python基于opencv实现人脸识别
2021/01/04 Python
Pycharm制作搞怪弹窗的实现代码
2021/02/19 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
size?德国官方网站:英国伦敦的球鞋精品店
2018/03/17 全球购物
自荐书4要点
2014/01/25 职场文书
运动会领导邀请函
2014/02/05 职场文书
世界读书日的活动方案
2014/08/20 职场文书
小学生国庆节演讲稿
2014/09/05 职场文书
授权委托书样本及填写说明
2014/09/19 职场文书
个人融资协议书
2014/10/02 职场文书
家长会后的感想
2015/08/11 职场文书
2016高考寄语或鼓励的话语
2015/12/04 职场文书
python中pycryto实现数据加密
2022/04/29 Python