Python 方法编码:引用属性的本地名称是否可以避免重复 self.attribute?
Python method coding: is a local name referring to an attribute ok to avoid repeating self.attribute?
假设你在一个Pythonclass中有一个非常重要的属性,以至于一个方法会多次引用它。例如,
class BeautifulDiagram(Object)
def draw(self):
# c is the drawing canvas (ReportLab), we use it many times
self.c.setLineWidth(0.5 * mm)
self.c.setStrokeColor('grey')
....
避免在上面的示例中写入大量属性 self.c 是否是一种好习惯,方法是创建对它的本地引用,例如
c = self.c
c.setLineWidth(0.5 * mm)
c.setStrokeColor('grey')
是否有任何理由避免这种情况(afaik,它有效),要么是因为它违反了编码准则,要么是因为它效率低下(我不认为这是一个很大的负担,因为它只复制对属性的引用)?
还有什么更好的做法吗?
假设你在一个Pythonclass中有一个非常重要的属性,以至于一个方法会多次引用它。例如,
class BeautifulDiagram(Object)
def draw(self):
# c is the drawing canvas (ReportLab), we use it many times
self.c.setLineWidth(0.5 * mm)
self.c.setStrokeColor('grey')
....
避免在上面的示例中写入大量属性 self.c 是否是一种好习惯,方法是创建对它的本地引用,例如
c = self.c
c.setLineWidth(0.5 * mm)
c.setStrokeColor('grey')
是否有任何理由避免这种情况(afaik,它有效),要么是因为它违反了编码准则,要么是因为它效率低下(我不认为这是一个很大的负担,因为它只复制对属性的引用)? 还有什么更好的做法吗?