美文网首页
可变类型、不可变类型

可变类型、不可变类型

作者: 仁安天下 | 来源:发表于2019-10-13 00:47 被阅读0次

赋值或传递参数的时候,是原对象的引用,可分为可变对象、不可变对象,可变对象的内容是可变的,例如list。而不可变的对象则相反,表示其内容不可变。

可变对象:list、dict,即使用list[],dict[]、.append()修改内部子项的时候,内存变量被修改,外部函数变量、全局变量也跟着修改,但内存地址没有变化

不可变对象:str、tuple,int

a = []
b = a
print id(a)
print id(b)
a.append(1)
print id(a)
print b
print id(b)


b = 1
print id(b)
b += 1
print id(b)

75687176
75687176
75687176
[1]
75687176
49046872
49046848

上面例子,list内存内容变了,但是内存地址始终没有变化,int内存地址有变化

相关文章

  • 关于Python的一些(trick?坑?)

    1. 可变类型和不可变类型 可变类型: 列表和字典, 可变集合(set) 不可变类型: 数字, 字符串, 元组, ...

  • Python可变类型与不可变类型

    Python可变类型与不可变类型 1、可变类型:List(列表),Dic(字典),Set(集合) 2、不可变类型:...

  • iOS内存管理之copy mutableCopy

    不可变类型调用copy方法是不可变类型。可变类型调用copy方法会复制出不可变类型。不可变类型调用mutableC...

  • 数据类型详解一

    可变不可变类型 可变类型:值改变,但是id不变,证明就是在改变原值,是可变类型 不可变类型:值改变,但...

  • strong和copy的区别

    stong修饰可变类型 copy修饰可变类型 strong修饰不可变类型 copy修饰不可变类型 总结如下:如果声...

  • python中哪些类型不能作为字典的key

    python中的类型分可以分为两类,可变类型和不可变类型 可变类型:dict、list、set 不可变类型:int...

  • 2018-06-05 python基础理解1

    #1.可变类型与不可变数据类型# 可变类型:列表、字典 不可变类型:数字、字符串、元祖

  • 可变类型、不可变类型

    赋值或传递参数的时候,是原对象的引用,可分为可变对象、不可变对象,可变对象的内容是可变的,例如list。而不可变的...

  • 可变对象使用copy修饰、不可变对象使用strong会发生什么

    使用copy修饰不可变对象的目的,是防止把可变类型的对象赋值给不可变类型的对象时,可变类型对象的值发生变化,引起不...

  • python基础知识点

    面向对象: 封装,继承,多态,抽象 1、可变与不可变类型 可变类型:dict、list 不可变类型:int、tup...

网友评论

      本文标题:可变类型、不可变类型

      本文链接:https://www.haomeiwen.com/subject/alfhmctx.html