首页 > 解决方案 > Python:有没有办法让变量总是全局的?

问题描述

我正在编写一个脚本,该脚本开始积累大量调用其他函数的函数。有一些变量用作全局计数器,或者跟踪经常更新的旋转角度,或者存储被各种函数引用的资产。因此,我的很多函数都以​​最多 7 行代码结束,只是为了指定这些变量是全局的。

它变得多余了。打个比方,在谈话中谈论自由女神像时,你不会以“自由女神像,在自由岛上,在曼哈顿区,在纽约市,在纽约州内......不是我斗篷上的雪球里的那个小东西。无论如何,关于那个最大和最著名的自由女神像,我想告诉你的是......“想象一下,如果你每次提起雕像,你之所以这么具体,是因为没有办法简单地说出自由女神像并被理解。这就是我现在感觉自己在使用 Python 的地方,经常不得不告诉我的函数我的许多变量都是全局的。

我是 Python 的初学者,所以我可能遗漏了一些明显的东西。有没有更好的方法来解决这个问题?

我的一个想法是,也许我应该通过函数将更多变量作为参数传递,但后来我发现更难跟踪变量行进的路线,而不是只需要知道它们的当前状态,比如它们何时全球的。

在我的一厢情愿中,可能有一些语法,例如:alwaysglobal my_var我可以用它来告诉所有my_var永远不会是本地的函数。我怀疑这样的事情不存在。

标签: pythonfunctionsyntaxglobal-variablesglobal

解决方案


推荐阅读