python - 在 Python 中更改函数内部全局值的最佳方法?
问题描述
我在 Python 中使用大量全局变量进行了很多工作,当我的代码进行时,这些变量的值需要不断地更改。对我来说一个非常好的解决方案是将全局变量作为函数内部的参数,但是,据我所知,只能通过在函数期间实际命名特定变量来更改函数内部的全局变量定义。因为我使用很多不同的变量名,这将迫使我为每个变量名创建很多函数。
我想要的是这样的:
x = 5
def foo(_):
global _
_ = 10
return _
foo(x)
print(x)
其中 x 现在将是 10 而不是实际输出,即 5。达到我想要的最有效的方法是什么?
解决方案
由于您x
在打电话时会费心命名foo(x)
,所以做起来并不费力x = foo(x)
:
x = 5
def foo(_):
_ = 10
return _
x = foo(x)
print(x)
推荐阅读
- google-app-engine - 创建 GCP 无服务器 VPC 连接时出错(“代码”:9)-“操作失败:区域中的 CPU 配额不足。”
- linux - 从 distroless 镜像构建 rootfs ext4 镜像 for firecracker
- r - 在 R Shiny App 中,如何在首次调用 App 时呈现默认表格?
- python - 如何在 PowerPC 架构中使用 Pyinstaller 跨平台
- flutter - 在应用程序购买或 Stripe 中构建音频流移动应用程序需要什么支付方式?
- arrays - 当文件夹中的文件数大于 1000 时,Dropbox Files.download 不会启动
- java - 尝试将库推送到 Maven 存储库时出现 403 错误
- c++ - 带有可变类型键的 C++ msgpack std::map
- c++ - 标准库中是否有堆分配的固定大小数组?
- python - 在这个哈希图中返回 True 是什么意思?