加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

python参数传递的四种方法总结

(2014-10-03 15:30:49)
标签:

杂谈

介绍

python中函数传递参数的方法有四种:

  • f(a, b, c)
  • f(a=1, b=2, c=3)
  • f(*args)
  • f(**kargs)
    前两种较为常见,也比较类似其他语言中的参数传递方式;后两种的方式较为灵活,能够实现传入任意个参数。
    第一种传参方式很简单,第二种传参方式允许调换参数位置进行传递。下面重点介绍后两种方式。

f(*args)

这种传参方式是将调用该函数时所传入的参数组成一个元组,赋值给args。在函数中使用参数可以通过访问元组args。下面是一个例子。


  1. def f(*args):
  2. print(args[2])
  3. f(1,2,3) # 输出3

f(**kargs)

这种传参方式最为灵活,以键值对的字典形式传入参数。在函数中可以直接通过参数名字符串称作为键,访问字典kargs。例如


  1. def f(**kargs):
  2. print(kargs['x'])
  3. f(x=1,y=2,a=3) # 输出1

总结

本文介绍了python函数传递参数的四种方法,在实际使用中,通常将四种方法混合使用。例如


  1. def f(a, b, x=1, *args, **kargs):
  2. print(a, b, x, args, kargs)
  3. f(1, 2, 3, 4, 5, m=6, n=7) # 输出1 2 3 (4, 5) {'m': 6, 'n': 7}

在混合使用时,需要注意按照f(a, b, c)->f(a=1, b=2, c=3)->f(*args)->f(**kargs)的顺序使用,如上例所示。

参考文献





0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有