【问题标题】:Python: Access members of a function from outside that function [duplicate]Python:从函数外部访问函数的成员[重复]
【发布时间】:2019-03-19 15:48:51
【问题描述】:

假设我有两个功能,一个属于另一个。

def foo():
    def bar():
        print("im bar")
    print("im foo and can call bar")
print("i can call foo, but not bar?")

怎么会引用或调用吧? 我会做foo.bar()吗?

如果 bar 不是像 if bar = 1 这样的函数,那么我将如何访问它?

我知道我可以将bar 移出foo,但还有其他方法吗?

【问题讨论】:

  • bar 不是foo 的成员。它是一个局部变量。要访问外部的值,您必须返回值
  • bar 仅在 foo 执行时存在。只要foo 结束,bar 就会超出范围并不再存在。这只是第一个概念问题……
  • 听起来这应该在一个带有静态方法的类中

标签: python scope


【解决方案1】:

我不认为你可以在这里做你想做的事,即打电话给foo.bar 并期望得到结果。但是,您可以将 foo 转换为一个类,然后尝试这种方式。

【讨论】:

    猜你喜欢
    • 2011-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-11
    • 2017-07-14
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    相关资源
    最近更新 更多