首页 > 解决方案 > 将 Python 代码拆分为多个共享相同变量的文件

问题描述

我想把我的 5000 行代码分成几个.py文件。

问题是我在两个文件中都使用了相同的变量,例如对象或其他变量。

我怎样才能使文件共享变量?

为了清楚起见,我不想将数千个变量从一个文件“发送”到另一个文件中,例如:

主文件

import other_file

foo = 'any_value'
other_file.send(foo=foo)

其他文件.py

shared = {}

def send(**args):
    global shared
    for arg in args:
        shared[arg] = args[arg]

目前我必须向下滚动一分钟才能找到我正在寻找的课程,我想避免这种情况;但我希望程序像所有代码都在一个文件中一样运行。有没有办法做到这一点?

标签: pythonfile

解决方案


感谢此页面中分享的想法,我找到了我想要的东西。

要拆分代码,我:

  1. 通读它以列出所有全局变量
  2. 将每个可能的全局变量移动到类中(例如dead变成player.deadscreen变成game.screen我已经拥有的playergame类)
  3. 通过将类放在其他文件中来拆分代码
  4. 在每个文件中导入模块(我知道,这很慢)
  5. 将剩余的全局类从主文件发送到其他文件

推荐阅读