如何在Python3中从函数内部更新全局变量?

如何在Python3中从函数内部更新全局变量?,python,function,global-variables,Python,Function,Global Variables,我试图运行一个优化步骤,我想从函数中更新一个全局变量。我使用的是优化脚本,我想在有任何更新时保存数据,但我无法从函数中更新全局变量 是否有方法从函数调用中更新全局变量?我确保不会并行运行优化步骤,因此这在技术上应该是可以的 global current_minimum current_minimum = 0 def update(): current_minimum = -0.1 _ = update() print(current_minimum) # 0 您需要将global

我试图运行一个优化步骤,我想从函数中更新一个全局变量。我使用的是优化脚本,我想在有任何更新时保存数据,但我无法从函数中更新全局变量

是否有方法从函数调用中更新全局变量?我确保不会并行运行优化步骤,因此这在技术上应该是可以的

global current_minimum
current_minimum = 0

def update():
    current_minimum = -0.1

_ = update()
print(current_minimum)
# 0

您需要将
global current\u minimum
放入更新所述变量的函数中。否则,函数会认为
current\u minimum
是一个局部变量。

global
位于函数内部,而不是顶层。(
global
在顶层确实应该是一个语法错误。)