【发布时间】:2018-08-20 15:16:44
【问题描述】:
我有以下类和方法:
class Basis(object):
def __init__(self, P = {'dimension': 1, 'generation':1}):
self.P = P
self.P['angle'] = np.pi/4
其中 P 是不包括'angle' 的dict,因此我在构造函数中设置它(角度现在是固定的,但我可能将它作为用户定义的函数未来)。
现在我有一个方法:
def make_projection(self, dimension, angle = np.pi/4):
return (angle*3)
我想将此函数中angle的默认值设置为构造函数中定义的self.P['angle']。
我不想在函数的主代码中使用self.P['angle'],因为我可能会单独使用该方法,给它一个不同的角度。
如果我只是这样做: def make_projection(self, dimension, angle = self.P['angle']): ,它会同时强调self,我不明白为什么。
--
我可以这样做吗?
【问题讨论】:
标签: python class constructor