這篇文章主要介紹了Python可變參數*args和**kwargs用法,結合實例形式總結分析了Python中可變參數*args和**kwargs的功能、區別與具體使用技巧,需要的朋友可以參考下
本文實例講述了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)
##結果如下:
腳本之家測試結果:index=0, one_char=沂index=1, one_char=水
運行結果截圖:
index=2, one_char=寒
index =3, one_char=城市
index=4, one_char=We
index=5, one_char=Are
index=6, one_char=Friends
id_num:20123456
name:yishuihancheng
------------------------------------------------- ----------
id_num 20123456
name yishuihancheng
相關推薦:
解說python參數與作用域的使用以上是Python可變參數*args和**kwargs用法實例小結的詳細內容。更多資訊請關注PHP中文網其他相關文章!