python - 无法在 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
解决方案
推荐阅读
- python - 在两个数据帧中随机采样相同的位置
- java - 确保我的代码逻辑合理。此代码最终将导致 yahtzee 的 java 表示
- python - 如何计算特定名称出现在 pandas 数据框列中的次数?
- python - “找不到与平台无关的库
" 尝试通过大学系统远程访问 jupyter notebook 时出错 - javascript - Javascript - 我看不到值总和的结果
- matlab - 在欧拉方法变得不可靠之前,可以使用的最小步长是多少?
- java - 在 Java 中检测打开的文件夹(JNativeHook)
- api - 将新语言与对话流代理集成
- c - 如何在没有终端的情况下启动 gvim?
- html - 浏览器忽略下载属性