美文网首页
python对象的可变与不可变

python对象的可变与不可变

作者: BigBigTang | 来源:发表于2019-03-07 21:34 被阅读0次

在python中 string,tuple,numbers是不可更改对象,list和dict是可更改对象。
可更改和不可更改的一个点在于修改时内存地址是否发生改变

可变不可变也是传址和传值的区别
传值的参数类型:数字,字符串,元组
传址的参数类型:列表,字典
列表,字典之所以可以在原处修改,因为传的是地址,得到地址后在这个地址上修改。

a = 1
def modify(one_string):
    one_string = 2
modify(a)
print(a) 

这时候打印的a还是1

b = []
def modify(one_list):
    one_list.append('1')
modify(b)
print(b)

这时候b=['1']

相关文章

  • Python浅拷贝 深拷贝

    内存泄漏太可怕。 Python 可变对象 & 不可变对象 在Python中,对象分为两种:可变对象和不可变对象。 ...

  • Python面试

    Python中万物皆对象,对象有可变(mutable)与不可变(immutable)对象 在python中,str...

  • python可变和不可变对象

    python中有可变对象和不可变对象,可变对象:list,dict.不可变对象有:int,string,float...

  • python中可变对象和不可变对象

    Python在heap中分配的对象分成两类:可变对象和不可变对象。 所谓可变对象是指,对象的内容可变,而不可变对象...

  • python可变对象和不可变对象

    Python在heap中分配的对象分为两类:可变对象和不可变对象。 可变对象:list,dict 不可变对象:in...

  • Python浅拷贝与深拷贝

    Python浅拷贝与深拷贝 一、可变对象与不可变对象 见Python变量 二、copy模块 对象拷贝是指在内存中创...

  • Python中的可变对象和不可变对象

    Python中的可变对象和不可变对象 什么是可变/不可变对象 不可变对象,该对象所指向的内存中的值不能被改变。当改...

  • Python浅拷贝与深拷贝的一点简单理解

    Python中的对象分为可变对象与不可变对象,其区别主要在于内存地址,也即id的不同对于不可变对象,浅拷贝与深拷贝...

  • 8 关于 Python 的变量

    Python 的对象一般可以分为可变对象与不可变对象这两类。具体解释如下: 可变对象:对象存放的地址的值会原地改变...

  • 2018-03-30

    可变与不可变类型 Python的每个对象都分为可变和不可变,主要的核心类型中,数字、字符串、元组是不可变的,列表、...

网友评论

      本文标题:python对象的可变与不可变

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