Python 构造函数中的变量赋值
我对构造函数中的变量赋值有一个问题:我有一个接受参数“context”的构造函数。首先,我将这个变量分配给一个类变量。其次,我创建了另一个类,它也将“context”作为参数 我的问题是:将类变量(self.context)或构造函数中的参数(context)赋值给新创建的类更好吗Python 构造函数中的变量赋值,python,constructor,variable-assignment,Python,Constructor,Variable Assignment,我对构造函数中的变量赋值有一个问题:我有一个接受参数“context”的构造函数。首先,我将这个变量分配给一个类变量。其次,我创建了另一个类,它也将“context”作为参数 我的问题是:将类变量(self.context)或构造函数中的参数(context)赋值给新创建的类更好吗 class State(): def __init__(self, context): self.context = context self.dicon
class State():
def __init__(self, context):
self.context = context
self.diconnected = Disconnected(self.context)
或
最终结果是一样的<代码>断开连接(上下文)只是稍微短一点,速度也快一点。最终结果是一样的<代码>断开连接(上下文)只是稍微短一点、快一点。在Python中,这实际上不会以任何显著方式影响程序的执行时间。唯一的情况是多个线程可能正在使用此数据。我总是使用这个参数以防万一。在Python中,这实际上不会以任何显著的方式影响程序的执行时间。唯一的情况是多个线程可能正在使用此数据。我总是用这个论点以防万一。客观上没有一个是“更好的”;在任何情况下,您都将同一对象传递给断开连接的
你写哪一个取决于你想强调哪一个依赖关系:Disconnected
与self
具有相同的上下文(这也意味着self
总是有一个),或者它具有作为参数传入的上下文。没有一个是客观上“更好的”;在任何情况下,您都将同一对象传递给断开连接的
你写哪一个取决于你想强调的依赖关系:
Disconnected
与self
具有相同的上下文(这也意味着self
总是有一个),或者它具有作为参数传入的上下文。这些是实例变量,而不是类变量。很抱歉造成混淆。我的意思是CourseThodse的实例变量是实例变量,而不是类变量。很抱歉造成混淆。我是指courseTo的实例变量来澄清:线程可以在赋值之间插入(self.context=context)以及使用self.context作为参数,从而导致无效状态?它可能会在将self.context的值传递给第二个类构造函数之前更改该值。澄清一下:线程可以在赋值之间插入(self.context=context)而使用self.context作为参数并因此导致无效状态?它可能会在传递给第二个类构造函数之前更改self.context的值。
class State():
def __init__(self, context):
self.context = context
self.diconnected = Disconnected(context)