2
我處於這樣一種情況,即函數返回的結構可能不需要在該函數之外的任何地方使用。然而,因爲它不是一個簡單的值,而是一個實際的對象,所以我想在我的函數中聲明一個類,然後我可以實例化並返回。Python的最佳實踐:函數中的類定義?
如:
def CreateSomeFunkyDataStructure():
class FunkyClass:
def __init__(self):
self.var1 = 'Play that funky music white boy.'
def getFunky(self):
print 'Play that funky music right.'
x = FunkyClass()
return x
o = CreateSomeFunkyDataStructure()
print o.var1
o.getFunky()
我的問題是,這是否是一個很好的做法還是因爲這一個壞的只是感覺奇怪。同時,在我看來,因爲封裝的目的是阻止某人訪問函數的實現,在這種情況下,它可能是非常合適的。如果該課程不是該課程其他地方所需要的課程,則該課程的其餘部分無權訪問該課程。