无法使用 python 中的参数更改函数内部的全局变量

can't change global variable inside function using parameter in python

import pickle
    
    name = 'something'
    
    def save(variable, value):
        obj = str(value)
        file = f'{variable}.pkl'
        fileObj = open(file, 'wb')
        pickle.dump(obj, fileObj)
        global variable
        variable = value
        fileObj.close()
    
    def read(variable):
        file = f'{variable}.pkl'
        with open(file, 'rb') as oFile:
            content = pickle.load(oFile)
            print(content)
            oFile.close()
    
    save(name, 'else')
    print('!! > ',name)
    read(name)

错误: 文件“h:/PythonProjects/Python.py”,第 10 行 全局变量 SyntaxError: name 'variable' is used prior to global declaration

关于如何使用参数更改全局变量有什么建议吗?

使用global语句之前,需要先定义一个全局变量...

variable = None

def bla():
    global variable
    variable = 22