Python 使用相同或新列表的新名称?
如果我有Python 使用相同或新列表的新名称?,python,list,object,reference,Python,List,Object,Reference,如果我有x=['f',1],那么module.x=x,module.x会引用x吗,还是会创建一个引用x列表中对象的新列表?如果你明白我的问题。这就像画一幅Python如何执行的图片一样。当我们这样做时: x = ['f', 1] module.x = x 它创建一个列表 x被分配它的参考 当我们这样做时: x = ['f', 1] module.x = x module.x被分配相同的引用 因此,不会创建一个新列表 运行此代码以清楚地理解它: class Temp: def _
x=['f',1]
,那么module.x=x
,module.x会引用x吗,还是会创建一个引用x列表中对象的新列表?如果你明白我的问题。这就像画一幅Python如何执行的图片一样。当我们这样做时:
x = ['f', 1]
module.x = x
x
被分配它的参考
x = ['f', 1]
module.x = x
module.x
被分配相同的引用
因此,不会创建一个新列表
运行此代码以清楚地理解它:
class Temp:
def __init__(self):
self.x = None
x = ['f', 1]
print(id(x))
temp = Temp()
temp.x = x
print(id(temp.x))
assert id(x) == id(temp.x)
什么是
模块
?请给出一个完整的最小示例。简短的回答是模块。x
是指x
。换句话说,如果您更改x
,它将module.x
更改为well@DYZ,我认为他/她是指对象的成员变量