我是Python的初学者,一直在处理C#和VB中的列表副本。但在Python中,每当我将列表作为参数传递并使用"for i in range“进行枚举,然后更改列表参数的值时,输入值实际上会更改原始列表。我认为Python应该默认按值传递参数,这样一旦函数完成,我仍然可以保留调用函数之前的原始值。我遗漏了什么?谢谢!
由于Python没有指针,我想知道如何将对对象的引用传递给函数而不是复制整个对象。return c
z = 12
print some_function(z)
根据我的理解,当我调用some_function(y)时,Python会分配新的空间来存储参数值,然后在函数返回c之后删除这个数据,并且不再需要它。由于我实际上并没有改变some_function中的参数,我怎么能简单地从函数中引用y而不是在传递它时复制y呢?