【发布时间】:2011-08-21 21:12:06
【问题描述】:
引用传递和名称传递的参数传递方式有什么区别这里是Python中的一个例子但是假设我们不使用任何Python规则:
def P(x,y)
global i
y=1
print(x)
i=2
print(x,y)
i=0
a = [7,11,13]
P(a[i],i)
P(i,a[i])
所以这里通过引用传递参数会给出输出:
- 7
- 7、2
- 2
- 2, 1
如果有任何错误,我很抱歉。
按名称传递表示我们只是应用了文本替换,但我仍然对如何使用按名称调用获取输出感到困惑。有什么帮助吗?
这是我通过名称传递得到的结果:
- 7
- 11, 2
- 2
- 2, 1
对吗?
【问题讨论】:
-
我不明白你在问什么。您是在询问事情在 python 中的工作方式或原因吗?
-
@Matth 其实我只是用了python语法,我真正想知道的是引用传递和名称传递的区别。
-
因为它适用于什么语言?
-
仅供参考,在第一种情况下,您的输出不正确;它将是
7, 1而不是7, 2。 -
我认为在过去的 40 年里没有任何一种语言有名字传递
标签: python parameter-passing pass-by-reference