什么是作业与参考?

时间:2014-11-26 19:45:01

标签: python function reference global-variables variable-assignment

我是Python新手。我对python函数如何决定引用或分配变量感到困惑。我认为这决定了变量是全局变量还是本地变量。

例如,

x = 1 #assignment
y = x + 1 #reference
x[0] = 1 #reference or assignment????
x += 1 #reference or assignment????

有什么一般规则我不知道吗?

1 个答案:

答案 0 :(得分:0)

全局vs本地的关键问题是名称是否由赋值语句绑定。

x = 1 #assignment
y = x + 1 #reference

正确和正确。

x[0] = 1 #reference or assignment????

这是对x的引用。此声明与x.__setitem__(0, 1)具有相同的效果。它在x上调用方法。它不会指定名称x

x += 1 #reference or assignment????

这是x的作业。它与x = x.__iadd__(1)具有相同的效果。