相关疑难解决方法(0)

Python:如何将类的功能分成多个文件?

我知道这已被问过几次,但我不能完全理解以前的答案和/或我认为解决方案并不能代表我正在拍摄的内容.我仍然是Python的新手,所以我很难搞清楚这一点.

我有一个主类,它有一个不同功能的TON.它变得越来越难以管理.我希望能够将这些功能分成单独的文件,但我发现很难找到一个好方法.

这是我到目前为止所做的:

main.py

import separate

class MainClass(object):
    self.global_var_1 = ...
    self.global_var_2 = ...

    def func_1(self, x, y):
        ...
    def func_2(self, z):
        ...
    # tons of similar functions, and then the ones I moved out:

    def long_func_1(self, a, b):
        return separate.long_func_1(self, a, b)
Run Code Online (Sandbox Code Playgroud)

separate.py

def long_func_1(obj, a, b):
    if obj.global_var_1:
        ...
    obj.func_2(z)
    ...
    return ...
# Lots of other similar functions that use info from MainClass
Run Code Online (Sandbox Code Playgroud)

我这样做是因为如果我这样做:

obj_1 = MainClass()

我希望能够做到:

obj_1.long_func_1(a, b)

代替:

separate.long_func_1(obj_1, a, b)

我知道这似乎有点挑剔,但我想要开始的所有代码,obj_1.所以没有混乱. …

python file object decorator

14
推荐指数
3
解决办法
7906
查看次数

标签 统计

decorator ×1

file ×1

object ×1

python ×1