2012-07-15 98 views
5

嗨,我想知道如何在Python中实现这一点。比方说,比如你有两个参数,并且打印出来的功能安慰Python:按名称传递参数

def myFunc(varA, varB): 
    print 'varA=', varA 
    print 'varB=', varB 

我见过库(pymel是一个想到的)它允许您指定要分析的数据参数也按名称排列,没有特定的顺序。例如

myFunc(varB=12, varA = 'Tom') 

我不知道它看上去那样我缺少,因为这不工作时,我试图声明内或玛雅环境之外我自己的功能。

任何线索都会棒极了,谢谢你的进步。

+4

发布您的代码,报告错误 – cobie 2012-07-15 19:43:52

+0

您可以使用任何现有的Python函数做到这一点...有什么不对? – 2012-07-15 19:45:31

+0

最常见的错误是使用非关键字前的关键字参数,但是,是啊发布您的代码 – 2012-07-15 19:45:50

回答

11

这是正常的Python行为。如果你看到错误,那么你正在做其他事情(例如,缺少必需的参数,试图通过名称传递位置参数等)。

>>> def func(foo, bar): 
... print foo, bar 
... 
>>> func(bar='quux', foo=42) 
42 quux 
+0

是的,这是一个混乱,我会尽快给你这个答案。 – SacredGeometry 2012-07-15 19:46:40