码迷,mamicode.com
首页 > 其他好文 > 详细

可变数据类型与不可变数据类型

时间:2020-06-24 16:34:14      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:对象   string   一个   end   +=   table   str   方法   可变   

可变类型(mutable):

变量进行append、+=等这种操作后 == 改变了变量的值,而不会新建一个对象,变量引用的对象的地址也不会变化,不过对于相同的值的不同对象,在内存中则会存在不同的对象,即每个对象都有自己的地址,相当于内存中对于同值的对象保存了多份,这里不存在引用计数,是实实在在的对象。

  • list
  • dict
  • set
  • bytearray
  • user-defined classes (除非是特别定义的不可变)

 

不可变类型(immutable):

改变了变量的值 == 新建了一个对象,而对于相同的值的对象,在内存中则只有一个对象(一个地址), python的id() 方法让你明白

  • int
  • float
  • decimal
  • complex
  • bool
  • string
  • tuple
  • range
  • frozenset
  • bytes

可变数据类型与不可变数据类型

标签:对象   string   一个   end   +=   table   str   方法   可变   

原文地址:https://www.cnblogs.com/liudaya/p/13187639.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!