Python 从父函数获取变量

Python 从父函数获取变量,python,Python,我有一个生成另一个函数的函数 def make_Func问候语: 定义函数名: 返回问候语++名称 返回函数 >>>打招呼 >>>问好 你好 在脚本的其他地方,我可以说“你好”,但我不知道该函数中的问候语实际上是什么。我想知道 当然,无法获取名称,因为它是在调用函数时指定的。但是问候语是静态的,因为它是在函数之外定义的 我可以检查say_hello的某些属性以获取原始hello吗?您可以将属性greeting存储在func中: 您只需在func中存储属性问候语: 您可以找到一个关于如何在pyth

我有一个生成另一个函数的函数

def make_Func问候语: 定义函数名: 返回问候语++名称 返回函数 >>>打招呼 >>>问好 你好 在脚本的其他地方,我可以说“你好”,但我不知道该函数中的问候语实际上是什么。我想知道

当然,无法获取名称,因为它是在调用函数时指定的。但是问候语是静态的,因为它是在函数之外定义的


我可以检查say_hello的某些属性以获取原始hello吗?

您可以将属性greeting存储在func中:


您只需在func中存储属性问候语:


您可以找到一个关于如何在python中编译内部函数的很好的解释


那么获取变量最简单的方法就是说_hello。u闭包u[0]。cell\u contents

您可以找到一个很好的解释,说明如何在python中编译内部函数


那么获取变量最简单的方法就是说_hello。u闭包u[0]。单元格内容

您的Python版本是什么?一种很老套的方式是说“你好”。“闭包”[0]。单元格内容。@schwobaseggl对于我的具体情况,我写的是3.4及以上版本。你为什么需要这个?看看你的Python版本是什么?一种很老套的方式是说“你好”。“闭包”[0]。单元格内容。@schwobaseggl对于我的具体情况,我写的是3.4及以上版本。你为什么需要这个?看见
def make_func(greeting):
    def func(name):
        return func.greeting + " " + name
    func.greeting = greeting
    return func

say_hello = make_func("Hello")
print(say_hello.greeting)  # Hello
say_hello.greeting = 'Bye'
print(say_hello('there'))  # Bye there