Python可变参数*args和**kwargs用法实例小结


本文摘自php中文网,作者不言,侵删。

这篇文章主要介绍了Python可变参数*args和**kwargs用法,结合实例形式总结分析了Python中可变参数*args和**kwargs的功能、区别与具体使用技巧,需要的朋友可以参考下

本文实例讲述了Python可变参数*args和**kwargs用法。分享给大家供大家参考,具体如下:

一句话简单概括:当函数的参数不确定的时候就需要用到*args**kwargs前者和后者的区别在于,后者引入了”可变”key的概念,而前者没有key的概念,具体看下面的使用样例和具体的解释即可:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

#!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用法实例小结的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python统计序列中元素的方法

Python字典的操作总结(附示例)

Python 多行匹配模式了解

爬虫基本流程request和response的介绍

Python用户评论标签匹配的解决方法

Python实现求笛卡尔乘积方法详解

Python学哪个web框架好?2019 Python web框架排行

7个你必须要知道的Python ide工具

Python使用matplotlib绘制饼图

正则表达式以及Python re库的使用

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...