返回功能



我具有使用返回变量的函数。

我如何在这样的主要函数中称呼它们:

    text = 'a'
    def a(text):
        text = x
        return x
    
    def b(x):
        x = z
        return z
    def main():
        # What do I put here to call function a and b?
    
    main()

我如何称呼它们

您已经知道如何打电话;(

def main():
...
main()

所以我认为您对:

感到困惑
def a(text):
text = x
return x

x未在a中定义,也不由argument传递给它。但这没关系。在Python中,所有定义的外部功能的变量仍然可见。唯一的例外是函数参数与这些变量之一具有相同的名称。然后参数将优先。

这种机制称为闭合。函数在定义函数时已经在范围中已经存在的一些变量关闭。

您可以在这里进一步了解:https://www.learnpython.org/en/closures

text = 'a'
def a(text):
    text = x
    return x
def b(x):
    x = z
    return z
def main():
    x = a(text)    
    z = b(x)
main()

这可能是您想要的

尚不清楚您要实现什么。您在函数a中使用变量x和函数b中的变量z,而无需定义这两个变量。

此外,您正在函数a中设置变量text,而无需使用语句global捕获它,请在此处查找更多信息。

和全球变量被认为是不良实践。

相关内容

  • 没有找到相关文章

最新更新