大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本文实例讲述了Python可变参数*args和**kwargs用法。分享给大家供大家参考,具体如下:
创新互联公司是一家集网站建设,平顶山企业网站建设,平顶山品牌网站建设,网站定制,平顶山网站建设报价,网络营销,网络优化,平顶山网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。一句话简单概括:当函数的参数不确定的时候就需要用到*args
和**kwargs
,前者和后者的区别在于,后者引入了”可变”key的概念,而前者没有key的概念,具体看下面的使用样例和具体的解释即可:
#!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:*args 和 **kwargs ''' def test_func1(*args): ''''' *args 当函数的参数数量不确定的时候可以使用*args,个人理解*args相当于一个大小可变地列表 容器,有点类似于C语言中的指针,传给引用即可找到内容,在这里可以使用*+变量的形式 来实现内容可变列表的输出 ''' for index, one_char in enumerate(args): print 'index={0}, one_char={1}'.format(index, one_char) def test_func2(**kwargs): ''''' **kwargs 这个和上面的功能性质是一样的,只是*args没有key的概念,**kwargs加入了可变key的操作 这个参数允许你使用未定义的参数名而不会出现KeyError ''' for id_num, name in kwargs.items(): print '{0}:{1}'.format(id_num,name) def print_dict(one_dict): ''''' 直接输出字典内容 ''' for id_num, name in one_dict.items(): print id_num, name if __name__ == '__main__': print "创新互联测试结果:" str_list=['沂','水','寒','城','We','Are','Friends'] str_dict={'id_num':20123456, 'name':'yishuihancheng'} test_func1(*str_list) test_func2(**str_dict) print '-----------------------------------------------------------' print_dict(str_dict)