首页 > 解决方案 > 无法在 Python 中修改全局变量

问题描述

我正在尝试从 python 函数更新全局声明的变量的值。我正在将此函数提供给 Pool.map() 方法。但我没有看到变量得到更新。请解释发生了什么以及解决方法是什么?

from multiprocessing import Pool
a=0
def fun(num):
    global a
    if num==4:
        a=4

if __name__=='__main__':
    pool=Pool()
    pool.map(fun,[1,2,3,4,5,6])
    pool.close()
    pool.join()
    print(a)

输出 = 0 预期输出 = 4

标签: pythonglobal-variablespython-multiprocessing

解决方案


推荐阅读