我是Python新手。我对python函数如何决定引用或分配变量感到困惑。我认为这决定了变量是全局变量还是本地变量。
例如,
x = 1 #assignment
y = x + 1 #reference
x[0] = 1 #reference or assignment????
x += 1 #reference or assignment????
有什么一般规则我不知道吗?
答案 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)
具有相同的效果。