这里理解是不是不合理??给点意见

这里理解是不是不合理??给点意见

python中的所有定义的都是“引用标识符”,它的“引用标识符”又和C/C++的有点不同:

1)可重新引用,但不能传入函数的引用。一般的引用标识符。

    def myFun(a):

    a=a+1

    a=0

    myFun(a)

    print(a)    #这里还是0,没有保存修改值。

2)不可重新引用。 不可变容器的成员标识符

    string=(”jessinio”,”jason”)

    string[0]=”abcde”    #出错!因为不能重新引用。

3)可重新引用、可传入函数的引用。 如:可变容器的成员标识符。

    能完成上面的所有问题。
Immutable & Mutable
Immutable 包括
Number,Strings,Unicode,Tuples
其他对象基本上都是mutable.

Immutable对象就相当于是常量对象。多个值相等的变量可能指向的是同一个内存空间。

数值是Immutable这个概念,某种程度上是python数值计算性能低下的元凶。想象一下a=a+1这个操作
首先要把 a指向的对象和 “1”这个对象相加,生成新的对象,然后把新的对象赋值给a。


QUOTE:
原帖由 jessinio 于 2007-1-7 22:13 发表
python中的所有定义的都是“引用标识符”,它的“引用标识符”又和C/C++的有点不同:

1)可重新引用,但不能传入函数的引用。一般的引用标识符。

    def myFun(a):

    a=a+1

    a=0

    myFun ...

我觉得把Python的定义理解为“命名-对象”绑定机制要比引用更合理。


QUOTE:
原帖由 March.Liu 于 2007-1-7 23:26 发表


我觉得把Python的定义理解为“命名-对象”绑定机制要比引用更合理。

赞同,我觉得python说穿了,就是命名空间的诀窍