代码之家  ›  专栏  ›  技术社区  ›  WestCoastProjects

对于只读使用,所有全局变量都需要显式导入到本地范围吗?[副本]

  •  0
  • WestCoastProjects  · 技术社区  · 5 年前

    我读到过关于是否需要明确进口的相互矛盾的说法 只读 使用。无论如何,任何进口都是必需的 突变 全球。

    具体来说,我很恼火需要把 global ... 里面 每一个 单个脚本中的方法,用于以下操作 Enums 这些都是 总是 不变性。我想把程序级别设置为 允许 _globals的只读用法。

    这里有什么选择?

    更新 我看到了正在发生的事情: Pycharm 实际上只有在有 突变 正在发生。这很难发现,因为通常情况下,全局变量的第一次使用是只读的:但只有在给定的方法中,突变才会发生。在屏幕截图所示的情况下,它是 lastBadgeId :

    enter image description here

    如果同一方法中后续代码中的突变被注释掉,那么红色就会消失。

    1 回复  |  直到 5 年前
        1
  •  1
  •   tripleee    5 年前

    无需申报 global 对于一个你只读的变量。在复杂的程序中,这可能对读者有所帮助;但没有技术上的必要性。无论如何,一个更有用的约定是对全局变量使用大写。