python - 无法使用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 before global declaration
关于如何使用参数更改全局变量的任何建议?
解决方案
在使用全局语句之前,需要先定义一个全局变量...
variable = None
def bla():
global variable
variable = 22
推荐阅读
- html - 带有动画的可重复背景图标
- shopify - Shopify:我需要一个产品链接以放置在模板文件中
- javascript - 动态填充javascript配置,烧瓶管理员。
- sql - JSON - 如何将数组附加到sql中的数组
- alloy - 合金中的建模状态:所有关系的语法相同,但以下除外
- android-studio - 如何在 Android Studio 中运行飞镖?
- ms-access - 计算特定帐户的分类帐查询中的余额?
- python - 日志文件中的 MySQL 连接失败错误
- asp.net - 如何将 asp.net 核心身份验证迁移到新的 Google SignIn 服务?
- kubernetes - Kubernetes客户子域动态绑定