可能重复:
Python: How do I pass a variable by reference?Python:什么时候通过引用传递变量,何时传值?
我的代码:
locs = [ [1], [2] ]
for loc in locs:
loc = []
print locs
# prints => [ [1], [2] ]
为什么是locs
元素loc
没有参考?
Python:除非明确复制,否则一切都作为参考传递[这是不是真的? ]
请解释.. python如何决定引用和复制?
更新:
怎么办?
def compute(ob):
if isinstance(ob,list): return process_list(ob)
if isinstance(ob,dict): return process_dict(ob)
for loc in locs:
loc = compute(loc) # What to change here to make loc a reference of actual locs iteration ?
- LOCS必须包含最终的处理响应!我不想使用
enumerate
,没有它可能吗?
一切都按价值传递,但每个值都只是一个参考;) – wim 2012-03-14 05:42:27