【发布时间】:2017-10-13 16:17:13
【问题描述】:
我正在考虑三种实现辅助函数的方法,即仅由类中的特定方法调用的函数。选项有:
- 定义外部函数
- 定义类的函数
- 在调用函数中定义一个函数
这是显示三个选项的最小代码:
class test(object):
def mytest1(self, n):
return outloop(n)
def mytest2(self, n):
return self.inloop(n)
def inloop(self, n):
if n < 0:
return 0
return self.inloop(n - 1) + 1
def mytest3(self, n):
def innerloop(n):
if n < 0:
return 0
return innerloop(n - 1) + 1
return innerloop(n)
def outloop(n):
if n < 0:
return 0
return outloop(n - 1) + 1
我测试了性能,所有三个似乎都大致相同。我的问题:您能否分享一些我在选择三个选项时应该注意的注意事项?
我会很高兴获得关于您认为何时应该使用每个架构的洞察力和指导。
【问题讨论】:
标签: python class architecture