码迷,mamicode.com
首页 > 其他好文 > 详细

函数参数自动解包

时间:2014-10-15 13:14:20      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   ar   for   sp   数据   div   

函数参数自动解包

你使用*, **可以自动的对一个list,dict做函数参数,自动的解包

例子:

def draw_point(x, y):
    # do some magic

point_foo = (3, 4)
point_bar = {y: 3, x: 2}

draw_point(*point_foo)
draw_point(**point_bar)

这是一个非常捷径的用法。

NOTE:

请看这两个程序的不同。。。

def cheeseshop(kind, *arguments, **keywords):
    print "-- Do you have any", kind, "?"
    print "-- I‘m sorry, we‘re all out of", kind
    for arg in arguments:
        print arg
    print "-" * 40
    keys = sorted(keywords.keys())
    for kw in keys:
        print kw, ":", keywords[kw]

cheeseshop("Limburger", "It‘s very runny, sir.",
           "It‘s really very, VERY runny, sir.",
           shopkeeper=Michael Palin,
           client="John Cleese",
           sketch="Cheese Shop Sketch")

 

Python不单可以自动解包,也可以自动的形成tuple,dict数据结构作为函数参数。。

函数参数自动解包

标签:style   blog   color   使用   ar   for   sp   数据   div   

原文地址:http://www.cnblogs.com/tom-zhao/p/4025943.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!