如何使局部变量(在函数内部)成为全局变量

发布于 2021-01-29 19:37:05

我正在使用函数,这样我的程序就不会一团糟,但我不知道如何将局部变量变成全局变量。

关注者
0
被浏览
116
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    这是两种实现相同目的的方法:

    使用参数并返回(推荐)

    def other_function(parameter):
        return parameter + 5
    
    def main_function():
        x = 10
        print(x)    
        x = other_function(x)
        print(x)
    

    运行时main_function,将获得以下输出

    >>> 10
    >>> 15
    

    使用全局变量(永远不要这样做)

    x = 0   # The initial value of x, with global scope
    
    def other_function():
        global x
        x = x + 5
    
    def main_function():
        print(x)    # Just printing - no need to declare global yet
        global x   # So we can change the global x
        x = 10
        print(x)
        other_function()
        print(x)
    

    现在您将获得:

    >>> 0    # Initial global value
    >>> 10   # Now we've set it to 10 in `main_function()`
    >>> 15   # Now we've added 5 in `other_function()`
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看