假设我跑的程序当你为自己添加一个列表时会发生什么?
x=[]
x.append(x)
print(x)
我得到的[[...]]作为输出。但是这是什么意思?列表是否存储指针然后指向自己?还是它从未完全复制过自己?这个列表如何存储在内存中?
修订: 我试图让我的头围绕着python如何完成这个自我引用。如果我想设计一种存储允许自引用的列表的方式,我会将一个变量存储为一对值,即数据类型和值。如果数据类型是一个int,那么该值表示存储的整数,但如果数据类型是一个列表,我会说存储的值应该是一个指针,但指向哪里?列表的开始像C一样?
如果列表是自己的一个元素,它是无限递归,所以不可能在平时的格式打印出来。 – khelwood