语法:Python中的可覆盖对象与不可覆盖对象

来源:互联网 发布:阿里云怎么备案域名 编辑:程序博客网 时间:2024/05/01 13:38

python中的对象按照覆盖方式可以分为两类:可覆盖对象和不可覆盖对象:

  • 可覆盖对象:list,dictionary
  • 不可覆盖对象:int,string,float,tuple

可覆盖对象一旦创建后还可以改变,响应的指向同一个对象引用的变量的内容随之改变;不可覆盖对象一旦创建后就不可以改变,这儿作了详细的解释。


代码实例

对于可覆盖对象

@breakingcoderdef deleteFruit(mylist):    if mylist is not None:        mylist.remove(mylist[0])fruits = ['apple','peal','banana','orange']deleteFruit(fruits)print(fruits)

上述代码的运行结果为:

['peal', 'banana', 'orange']

由于列表是可覆盖对象,函数中对列表的改动会直接影响到列表对象的变动。

对于不可覆盖对象

@breakingcoderdef addNum(mynumber):    mynumber += 2number = 8addNum(number)print(number)

上述代码的运行结果为:

8

由于整型是不可覆盖对象,函数中对对象引用变量的改动世界上不会对原有对象进行改动,而是指向了新创建的对象,随着函数的结束,局部变量也就失去了意义。number依旧指向对象8的地址。


0 0
原创粉丝点击