如何从嵌套方法访问外部容器变量

时间:2015-03-07 03:35:40

标签: python

考虑:

 def outerMethod(outerParam):

   outerLocal = "foo"

   def innerMethod(innerParam):
      # locals() will not work here
      print("%(outerParam)s %(outerLocal) %(innerParam)" %locals())

访问outerParam和outerLocal的正确方法是什么?

更新此问题与嵌套方法有关,因此问题已更新。

1 个答案:

答案 0 :(得分:1)

它确实有效,您只需使用%的正确语法:

>>> def foo(var):
...     car=3
...     print '%(var)s %(car)s' % locals()
...
>>> foo(123)
123 3