在python中的另一个文件中包含类中的函数

时间:2014-08-15 01:44:53

标签: python django

我正在为Django编写SOAP Web服务,它将具有很多功能。 为了保持清洁,我想把它分成几个文件。

我如何"包括"我的函数代码进入我的类(就像在PHP中一样)。

例如:

class SOAPService(ServiceBase):
  #first file
  from myfunctions1 import *
  #second file
  from myfunctionsA import *

应该表现得像:

class SOAPService(ServiceBase):
  #first file
  def myfunction1(ctx):
    return

  def myfunction2(ctx, arg1):
    return

  #second file
  def myfunctionA(ctx):
    return

  def myfunctionB(ctx, arg1):
    return

   ...

2 个答案:

答案 0 :(得分:1)

Python允许您从多个类继承,所以继续将您的方法放入一个单独的基类并继承它。

此外,python允许您使用import语句从其他文件中提取。

答案 1 :(得分:0)

虽然有几种方法可以做到这一点,但我建议的第一种方法是从两个文件创建 mixin 类。

所以在你的主要模块中

import myfunctions1
import myfunctionsA
class SOAPService(ServiceBase,myfunctions1.mixin,myfunctionsA.mixin):
    pass

并在你的模块中包含myfunctions1,myfunctionA等。

class mixin:
    def myfunction1(self):
        return
    def myfunction2(self, arg1):
        return